Coverage Report

Created: 2024-10-11 01:22

/src/scnlib/src/scn/impl.h
Line
Count
Source (jump to first uncovered line)
1
// Copyright 2017 Elias Kosunen
2
//
3
// Licensed under the Apache License, Version 2.0 (the "License");
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
6
//
7
//     https://www.apache.org/licenses/LICENSE-2.0
8
//
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an "AS IS" BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
// See the License for the specific language governing permissions and
13
// limitations under the License.
14
//
15
// This file is a part of scnlib:
16
//     https://github.com/eliaskosunen/scnlib
17
18
#pragma once
19
20
// Transitively includes <scn/scan.h>
21
#include <scn/regex.h>
22
#include <scn/xchar.h>
23
24
#include <algorithm>
25
#include <clocale>
26
#include <cmath>
27
#include <cwchar>
28
#include <functional>
29
#include <vector>
30
31
#if SCN_HAS_BITOPS
32
#include <bit>
33
#elif SCN_MSVC
34
#include <IntSafe.h>
35
#include <intrin.h>
36
#elif SCN_POSIX && !SCN_GCC_COMPAT
37
38
SCN_CLANG_PUSH
39
SCN_CLANG_IGNORE("-Wreserved-id-macro")
40
#define _XOPEN_SOURCE 700
41
SCN_CLANG_POP
42
43
#include <strings.h>
44
#endif
45
46
#if SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_STD
47
#include <regex>
48
#if SCN_REGEX_BOOST_USE_ICU
49
#error "Can't use the ICU with std::regex"
50
#endif
51
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_BOOST
52
#include <boost/regex.hpp>
53
#if SCN_REGEX_BOOST_USE_ICU
54
#include <boost/regex/icu.hpp>
55
#endif
56
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_RE2
57
#include <re2/re2.h>
58
#endif
59
60
namespace scn {
61
SCN_BEGIN_NAMESPACE
62
63
/////////////////////////////////////////////////////////////////
64
// Private ranges stuff
65
/////////////////////////////////////////////////////////////////
66
67
namespace ranges {
68
69
template <typename R>
70
using const_iterator_t = iterator_t<std::add_const_t<R>>;
71
72
// Like std::ranges::distance, utilizing .position if available
73
namespace detail::distance_ {
74
struct fn {
75
private:
76
    template <typename I, typename S>
77
    static constexpr auto impl(I i, S s, priority_tag<1>)
78
        -> decltype(s.position() - i.position())
79
    {
80
        return s.position() - i.position();
81
    }
82
83
    template <typename I, typename S>
84
    static constexpr auto impl(I i, S s, priority_tag<0>)
85
        -> std::enable_if_t<sized_sentinel_for<S, I>, iter_difference_t<I>>
86
71.2k
    {
87
71.2k
        return s - i;
88
71.2k
    }
std::__1::enable_if<sized_sentinel_for<char const*, char const*>, scn::v3::ranges::incrementable_traits<char const*>::difference_type>::type scn::v3::ranges::detail::distance_::fn::impl<char const*, char const*>(char const*, char const*, scn::v3::detail::priority_tag<0ul>)
Line
Count
Source
86
66.5k
    {
87
66.5k
        return s - i;
88
66.5k
    }
std::__1::enable_if<sized_sentinel_for<wchar_t const*, wchar_t const*>, scn::v3::ranges::incrementable_traits<wchar_t const*>::difference_type>::type scn::v3::ranges::detail::distance_::fn::impl<wchar_t const*, wchar_t const*>(wchar_t const*, wchar_t const*, scn::v3::detail::priority_tag<0ul>)
Line
Count
Source
86
4.74k
    {
87
4.74k
        return s - i;
88
4.74k
    }
Unexecuted instantiation: std::__1::enable_if<sized_sentinel_for<std::__1::__wrap_iter<char*>, std::__1::__wrap_iter<char*> >, scn::v3::ranges::incrementable_traits<std::__1::__wrap_iter<char*> >::difference_type>::type scn::v3::ranges::detail::distance_::fn::impl<std::__1::__wrap_iter<char*>, std::__1::__wrap_iter<char*> >(std::__1::__wrap_iter<char*>, std::__1::__wrap_iter<char*>, scn::v3::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<sized_sentinel_for<std::__1::__wrap_iter<wchar_t*>, std::__1::__wrap_iter<wchar_t*> >, scn::v3::ranges::incrementable_traits<std::__1::__wrap_iter<wchar_t*> >::difference_type>::type scn::v3::ranges::detail::distance_::fn::impl<std::__1::__wrap_iter<wchar_t*>, std::__1::__wrap_iter<wchar_t*> >(std::__1::__wrap_iter<wchar_t*>, std::__1::__wrap_iter<wchar_t*>, scn::v3::detail::priority_tag<0ul>)
89
90
    template <typename I, typename S>
91
    static constexpr auto impl(I i, S s, priority_tag<0>)
92
        -> std::enable_if_t<!sized_sentinel_for<S, I>, iter_difference_t<I>>
93
0
    {
94
0
        iter_difference_t<I> counter{0};
95
0
        while (i != s) {
96
0
            ++i;
97
0
            ++counter;
98
0
        }
99
0
        return counter;
100
0
    }
Unexecuted instantiation: std::__1::enable_if<!(sized_sentinel_for<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type>::type scn::v3::ranges::detail::distance_::fn::impl<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(sized_sentinel_for<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::detail::basic_scan_buffer<char>::forward_iterator>), scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>::difference_type>::type scn::v3::ranges::detail::distance_::fn::impl<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::detail::basic_scan_buffer<char>::forward_iterator>(scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(sized_sentinel_for<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type>::type scn::v3::ranges::detail::distance_::fn::impl<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(sized_sentinel_for<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type>::type scn::v3::ranges::detail::distance_::fn::impl<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(sized_sentinel_for<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>), scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type>::type scn::v3::ranges::detail::distance_::fn::impl<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>(scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(sized_sentinel_for<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type>::type scn::v3::ranges::detail::distance_::fn::impl<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::detail::priority_tag<0ul>)
101
102
public:
103
    template <typename I, typename S>
104
    constexpr auto operator()(I first, S last) const
105
        -> std::enable_if_t<input_or_output_iterator<I> && sentinel_for<S, I>,
106
                            iter_difference_t<I>>
107
71.2k
    {
108
71.2k
        return fn::impl(std::move(first), std::move(last), priority_tag<0>{});
109
71.2k
    }
std::__1::enable_if<(input_or_output_iterator<char const*>)&&(sentinel_for<char const*, char const*>), scn::v3::ranges::incrementable_traits<char const*>::difference_type>::type scn::v3::ranges::detail::distance_::fn::operator()<char const*, char const*>(char const*, char const*) const
Line
Count
Source
107
66.5k
    {
108
66.5k
        return fn::impl(std::move(first), std::move(last), priority_tag<0>{});
109
66.5k
    }
std::__1::enable_if<(input_or_output_iterator<wchar_t const*>)&&(sentinel_for<wchar_t const*, wchar_t const*>), scn::v3::ranges::incrementable_traits<wchar_t const*>::difference_type>::type scn::v3::ranges::detail::distance_::fn::operator()<wchar_t const*, wchar_t const*>(wchar_t const*, wchar_t const*) const
Line
Count
Source
107
4.74k
    {
108
4.74k
        return fn::impl(std::move(first), std::move(last), priority_tag<0>{});
109
4.74k
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type>::type scn::v3::ranges::detail::distance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>)&&(sentinel_for<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::detail::basic_scan_buffer<char>::forward_iterator>), scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>::difference_type>::type scn::v3::ranges::detail::distance_::fn::operator()<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::detail::basic_scan_buffer<char>::forward_iterator>(scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::detail::basic_scan_buffer<char>::forward_iterator) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(sentinel_for<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type>::type scn::v3::ranges::detail::distance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<std::__1::__wrap_iter<char*> >)&&(sentinel_for<std::__1::__wrap_iter<char*>, std::__1::__wrap_iter<char*> >), scn::v3::ranges::incrementable_traits<std::__1::__wrap_iter<char*> >::difference_type>::type scn::v3::ranges::detail::distance_::fn::operator()<std::__1::__wrap_iter<char*>, std::__1::__wrap_iter<char*> >(std::__1::__wrap_iter<char*>, std::__1::__wrap_iter<char*>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type>::type scn::v3::ranges::detail::distance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>)&&(sentinel_for<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>), scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type>::type scn::v3::ranges::detail::distance_::fn::operator()<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>(scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(sentinel_for<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type>::type scn::v3::ranges::detail::distance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<std::__1::__wrap_iter<wchar_t*> >)&&(sentinel_for<std::__1::__wrap_iter<wchar_t*>, std::__1::__wrap_iter<wchar_t*> >), scn::v3::ranges::incrementable_traits<std::__1::__wrap_iter<wchar_t*> >::difference_type>::type scn::v3::ranges::detail::distance_::fn::operator()<std::__1::__wrap_iter<wchar_t*>, std::__1::__wrap_iter<wchar_t*> >(std::__1::__wrap_iter<wchar_t*>, std::__1::__wrap_iter<wchar_t*>) const
110
};
111
}  // namespace detail::distance_
112
113
inline constexpr auto distance = detail::distance_::fn{};
114
115
namespace detail {
116
template <typename I, typename = void>
117
struct has_batch_advance : std::false_type {};
118
template <typename I>
119
struct has_batch_advance<I,
120
                         std::void_t<decltype(SCN_DECLVAL(I&).batch_advance(
121
                             SCN_DECLVAL(std::ptrdiff_t)))>> : std::true_type {
122
};
123
}  // namespace detail
124
125
// std::advance, utilizing .batch_advance if available
126
namespace detail::advance_ {
127
struct fn {
128
private:
129
    template <typename T>
130
    static constexpr T abs(T t)
131
99.8k
    {
132
99.8k
        if (t < T{0}) {
133
0
            return -t;
134
0
        }
135
99.8k
        return t;
136
99.8k
    }
137
138
    template <typename I>
139
    static constexpr auto impl(I& i, iter_difference_t<I> n, priority_tag<1>)
140
        -> std::enable_if_t<has_batch_advance<I>::value>
141
    {
142
        i.batch_advance(n);
143
    }
144
145
    template <typename I>
146
    static constexpr auto impl_i_n(I& i,
147
                                   iter_difference_t<I> n,
148
                                   priority_tag<0>)
149
        -> std::enable_if_t<random_access_iterator<I>>
150
180k
    {
151
180k
        i += n;
152
180k
    }
std::__1::enable_if<random_access_iterator<char const*>, void>::type scn::v3::ranges::detail::advance_::fn::impl_i_n<char const*>(char const*&, scn::v3::ranges::incrementable_traits<char const*>::difference_type, scn::v3::detail::priority_tag<0ul>)
Line
Count
Source
150
98.2k
    {
151
98.2k
        i += n;
152
98.2k
    }
std::__1::enable_if<random_access_iterator<wchar_t const*>, void>::type scn::v3::ranges::detail::advance_::fn::impl_i_n<wchar_t const*>(wchar_t const*&, scn::v3::ranges::incrementable_traits<wchar_t const*>::difference_type, scn::v3::detail::priority_tag<0ul>)
Line
Count
Source
150
82.1k
    {
151
82.1k
        i += n;
152
82.1k
    }
153
154
    template <typename I>
155
    static constexpr auto impl_i_n(I& i,
156
                                   iter_difference_t<I> n,
157
                                   priority_tag<0>)
158
        -> std::enable_if_t<bidirectional_iterator<I> &&
159
                            !random_access_iterator<I>>
160
3.15k
    {
161
3.15k
        constexpr auto zero = iter_difference_t<I>{0};
162
163
3.15k
        if (n > zero) {
164
0
            while (n-- > zero) {
165
0
                ++i;
166
0
            }
167
0
        }
168
3.15k
        else {
169
3.15k
            while (n++ < zero) {
170
0
                --i;
171
0
            }
172
3.15k
        }
173
3.15k
    }
std::__1::enable_if<(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(!(random_access_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)), void>::type scn::v3::ranges::detail::advance_::fn::impl_i_n<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type, scn::v3::detail::priority_tag<0ul>)
Line
Count
Source
160
1.21k
    {
161
1.21k
        constexpr auto zero = iter_difference_t<I>{0};
162
163
1.21k
        if (n > zero) {
164
0
            while (n-- > zero) {
165
0
                ++i;
166
0
            }
167
0
        }
168
1.21k
        else {
169
1.21k
            while (n++ < zero) {
170
0
                --i;
171
0
            }
172
1.21k
        }
173
1.21k
    }
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >)&&(!(random_access_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >)), void>::type scn::v3::ranges::detail::advance_::fn::impl_i_n<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::difference_type, scn::v3::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(!(random_access_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)), void>::type scn::v3::ranges::detail::advance_::fn::impl_i_n<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type, scn::v3::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >)&&(!(random_access_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >)), void>::type scn::v3::ranges::detail::advance_::fn::impl_i_n<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::difference_type, scn::v3::detail::priority_tag<0ul>)
std::__1::enable_if<(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >)&&(!(random_access_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >)), void>::type scn::v3::ranges::detail::advance_::fn::impl_i_n<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::difference_type, scn::v3::detail::priority_tag<0ul>)
Line
Count
Source
160
1.94k
    {
161
1.94k
        constexpr auto zero = iter_difference_t<I>{0};
162
163
1.94k
        if (n > zero) {
164
0
            while (n-- > zero) {
165
0
                ++i;
166
0
            }
167
0
        }
168
1.94k
        else {
169
1.94k
            while (n++ < zero) {
170
0
                --i;
171
0
            }
172
1.94k
        }
173
1.94k
    }
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >)&&(!(random_access_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >)), void>::type scn::v3::ranges::detail::advance_::fn::impl_i_n<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::difference_type, scn::v3::detail::priority_tag<0ul>)
174
175
    template <typename I>
176
    static constexpr auto impl_i_n(I& i,
177
                                   iter_difference_t<I> n,
178
                                   priority_tag<0>)
179
        -> std::enable_if_t<!bidirectional_iterator<I>>
180
0
    {
181
0
        while (n-- > iter_difference_t<I>{0}) {
182
0
            ++i;
183
0
        }
184
0
    }
Unexecuted instantiation: std::__1::enable_if<!(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >), void>::type scn::v3::ranges::detail::advance_::fn::impl_i_n<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type, scn::v3::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >), void>::type scn::v3::ranges::detail::advance_::fn::impl_i_n<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type, scn::v3::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(bidirectional_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>), void>::type scn::v3::ranges::detail::advance_::fn::impl_i_n<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>(scn::v3::detail::basic_scan_buffer<char>::forward_iterator&, scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>::difference_type, scn::v3::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >), void>::type scn::v3::ranges::detail::advance_::fn::impl_i_n<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type, scn::v3::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >), void>::type scn::v3::ranges::detail::advance_::fn::impl_i_n<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type, scn::v3::detail::priority_tag<0ul>)
Unexecuted instantiation: std::__1::enable_if<!(bidirectional_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>), void>::type scn::v3::ranges::detail::advance_::fn::impl_i_n<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>(scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator&, scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type, scn::v3::detail::priority_tag<0ul>)
185
186
    template <typename I, typename S>
187
    static constexpr auto impl_i_s(I& i, S bound, priority_tag<2>)
188
        -> std::enable_if_t<std::is_assignable_v<I&, S>>
189
14.3k
    {
190
14.3k
        i = std::move(bound);
191
14.3k
    }
_ZN3scn2v36ranges6detail8advance_2fn8impl_i_sIPKcS7_EENSt3__19enable_ifIXsr3stdE15is_assignable_vIRT_T0_EEvE4typeESB_SC_NS0_6detail12priority_tagILm2EEE
Line
Count
Source
189
962
    {
190
962
        i = std::move(bound);
191
962
    }
_ZN3scn2v36ranges6detail8advance_2fn8impl_i_sIPKwS7_EENSt3__19enable_ifIXsr3stdE15is_assignable_vIRT_T0_EEvE4typeESB_SC_NS0_6detail12priority_tagILm2EEE
Line
Count
Source
189
13.4k
    {
190
13.4k
        i = std::move(bound);
191
13.4k
    }
192
193
    template <typename I, typename S>
194
    static constexpr auto impl_i_s(I& i, S bound, priority_tag<1>)
195
        -> std::enable_if_t<sized_sentinel_for<S, I>>
196
    {
197
        fn::impl_i_n(i, bound - i);
198
    }
199
200
    template <typename I, typename S>
201
    static constexpr void impl_i_s(I& i, S bound, priority_tag<0>)
202
144
    {
203
2.64k
        while (i != bound) {
204
2.50k
            ++i;
205
2.50k
        }
206
144
    }
Unexecuted instantiation: void scn::v3::ranges::detail::advance_::fn::impl_i_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>, scn::v3::detail::priority_tag<0ul>)
void scn::v3::ranges::detail::advance_::fn::impl_i_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>, scn::v3::detail::priority_tag<0ul>)
Line
Count
Source
202
96
    {
203
1.96k
        while (i != bound) {
204
1.86k
            ++i;
205
1.86k
        }
206
96
    }
Unexecuted instantiation: void scn::v3::ranges::detail::advance_::fn::impl_i_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>, scn::v3::detail::priority_tag<0ul>)
void scn::v3::ranges::detail::advance_::fn::impl_i_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>, scn::v3::detail::priority_tag<0ul>)
Line
Count
Source
202
48
    {
203
684
        while (i != bound) {
204
636
            ++i;
205
636
        }
206
48
    }
207
208
    template <typename I, typename S>
209
    static constexpr auto impl_i_n_s(I& i, iter_difference_t<I> n, S bound)
210
        -> std::enable_if_t<sized_sentinel_for<S, I>, iter_difference_t<I>>
211
49.9k
    {
212
49.9k
        if (fn::abs(n) >= fn::abs(bound - i)) {
213
66
            auto dist = bound - i;
214
66
            fn::impl_i_s(i, bound, priority_tag<2>{});
215
66
            return dist;
216
66
        }
217
49.8k
        fn::impl_i_n(i, n, priority_tag<1>{});
218
49.8k
        return n;
219
49.9k
    }
std::__1::enable_if<sized_sentinel_for<char const*, char const*>, scn::v3::ranges::incrementable_traits<char const*>::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<char const*, char const*>(char const*&, scn::v3::ranges::incrementable_traits<char const*>::difference_type, char const*)
Line
Count
Source
211
49.9k
    {
212
49.9k
        if (fn::abs(n) >= fn::abs(bound - i)) {
213
66
            auto dist = bound - i;
214
66
            fn::impl_i_s(i, bound, priority_tag<2>{});
215
66
            return dist;
216
66
        }
217
49.8k
        fn::impl_i_n(i, n, priority_tag<1>{});
218
49.8k
        return n;
219
49.9k
    }
Unexecuted instantiation: std::__1::enable_if<sized_sentinel_for<wchar_t const*, wchar_t const*>, scn::v3::ranges::incrementable_traits<wchar_t const*>::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<wchar_t const*, wchar_t const*>(wchar_t const*&, scn::v3::ranges::incrementable_traits<wchar_t const*>::difference_type, wchar_t const*)
220
221
    template <typename I, typename S>
222
    static constexpr auto impl_i_n_s(I& i, iter_difference_t<I> n, S bound)
223
        -> std::enable_if_t<bidirectional_iterator<I> &&
224
                                !sized_sentinel_for<S, I>,
225
                            iter_difference_t<I>>
226
4.04k
    {
227
4.04k
        constexpr iter_difference_t<I> zero{0};
228
4.04k
        iter_difference_t<I> counter{0};
229
230
4.04k
        if (n < zero) {
231
0
            do {
232
0
                --i;
233
0
                --counter;  // Yes, really
234
0
            } while (++n < zero && i != bound);
235
0
        }
236
4.04k
        else {
237
14.0k
            while (n-- > zero && i != bound) {
238
9.96k
                ++i;
239
9.96k
                ++counter;
240
9.96k
            }
241
4.04k
        }
242
243
4.04k
        return counter;
244
4.04k
    }
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >)&&(!(sized_sentinel_for<scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >)), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::difference_type, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true>)
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(!(sized_sentinel_for<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>)
std::__1::enable_if<(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(!(sized_sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>)
Line
Count
Source
226
3.32k
    {
227
3.32k
        constexpr iter_difference_t<I> zero{0};
228
3.32k
        iter_difference_t<I> counter{0};
229
230
3.32k
        if (n < zero) {
231
0
            do {
232
0
                --i;
233
0
                --counter;  // Yes, really
234
0
            } while (++n < zero && i != bound);
235
0
        }
236
3.32k
        else {
237
11.1k
            while (n-- > zero && i != bound) {
238
7.87k
                ++i;
239
7.87k
                ++counter;
240
7.87k
            }
241
3.32k
        }
242
243
3.32k
        return counter;
244
3.32k
    }
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >)&&(!(sized_sentinel_for<scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >)), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::difference_type, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true>)
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(!(sized_sentinel_for<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>)
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(!(sized_sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>)
std::__1::enable_if<(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >)&&(!(sized_sentinel_for<scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >)), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::difference_type, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true>)
Line
Count
Source
226
724
    {
227
724
        constexpr iter_difference_t<I> zero{0};
228
724
        iter_difference_t<I> counter{0};
229
230
724
        if (n < zero) {
231
0
            do {
232
0
                --i;
233
0
                --counter;  // Yes, really
234
0
            } while (++n < zero && i != bound);
235
0
        }
236
724
        else {
237
2.81k
            while (n-- > zero && i != bound) {
238
2.08k
                ++i;
239
2.08k
                ++counter;
240
2.08k
            }
241
724
        }
242
243
724
        return counter;
244
724
    }
Unexecuted instantiation: std::__1::enable_if<(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >)&&(!(sized_sentinel_for<scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >)), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::difference_type, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true>)
245
246
    template <typename I, typename S>
247
    static constexpr auto impl_i_n_s(I& i, iter_difference_t<I> n, S bound)
248
        -> std::enable_if_t<!bidirectional_iterator<I> &&
249
                                !sized_sentinel_for<S, I>,
250
                            iter_difference_t<I>>
251
0
    {
252
0
        constexpr iter_difference_t<I> zero{0};
253
0
        iter_difference_t<I> counter{0};
254
255
0
        while (n-- > zero && i != bound) {
256
0
            ++i;
257
0
            ++counter;
258
0
        }
259
260
0
        return counter;
261
0
    }
Unexecuted instantiation: std::__1::enable_if<(!(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >))&&(!(sized_sentinel_for<scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >)), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true>)
Unexecuted instantiation: std::__1::enable_if<(!(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >))&&(!(sized_sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>)
Unexecuted instantiation: std::__1::enable_if<(!(bidirectional_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>))&&(!(sized_sentinel_for<scn::v3::ranges::default_sentinel_t, scn::v3::detail::basic_scan_buffer<char>::forward_iterator>)), scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>(scn::v3::detail::basic_scan_buffer<char>::forward_iterator&, scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>::difference_type, scn::v3::ranges::default_sentinel_t)
Unexecuted instantiation: std::__1::enable_if<(!(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >))&&(!(sized_sentinel_for<scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >)), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true>)
Unexecuted instantiation: std::__1::enable_if<(!(bidirectional_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >))&&(!(sized_sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>)
Unexecuted instantiation: std::__1::enable_if<(!(bidirectional_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>))&&(!(sized_sentinel_for<scn::v3::ranges::default_sentinel_t, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>)), scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type>::type scn::v3::ranges::detail::advance_::fn::impl_i_n_s<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>(scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator&, scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type, scn::v3::ranges::default_sentinel_t)
262
263
public:
264
    template <typename I>
265
    constexpr auto operator()(I& i, iter_difference_t<I> n) const
266
        -> std::enable_if_t<input_or_output_iterator<I>>
267
133k
    {
268
133k
        fn::impl_i_n(i, n, detail::priority_tag<1>{});
269
133k
    }
std::__1::enable_if<input_or_output_iterator<char const*>, void>::type scn::v3::ranges::detail::advance_::fn::operator()<char const*>(char const*&, scn::v3::ranges::incrementable_traits<char const*>::difference_type) const
Line
Count
Source
267
48.3k
    {
268
48.3k
        fn::impl_i_n(i, n, detail::priority_tag<1>{});
269
48.3k
    }
std::__1::enable_if<input_or_output_iterator<wchar_t const*>, void>::type scn::v3::ranges::detail::advance_::fn::operator()<wchar_t const*>(wchar_t const*&, scn::v3::ranges::incrementable_traits<wchar_t const*>::difference_type) const
Line
Count
Source
267
82.1k
    {
268
82.1k
        fn::impl_i_n(i, n, detail::priority_tag<1>{});
269
82.1k
    }
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >, void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type) const
std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >, void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type) const
Line
Count
Source
267
1.21k
    {
268
1.21k
        fn::impl_i_n(i, n, detail::priority_tag<1>{});
269
1.21k
    }
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >, void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>, void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>(scn::v3::detail::basic_scan_buffer<char>::forward_iterator&, scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >, void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >, void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >, void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>, void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>(scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator&, scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type) const
std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >, void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::difference_type) const
Line
Count
Source
267
1.94k
    {
268
1.94k
        fn::impl_i_n(i, n, detail::priority_tag<1>{});
269
1.94k
    }
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >, void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::difference_type) const
270
271
    template <typename I, typename S>
272
    constexpr auto operator()(I& i, S bound) const
273
        -> std::enable_if_t<input_or_output_iterator<I> && sentinel_for<S, I>>
274
14.4k
    {
275
14.4k
        fn::impl_i_s(i, bound, priority_tag<2>{});
276
14.4k
    }
std::__1::enable_if<(input_or_output_iterator<char const*>)&&(sentinel_for<char const*, char const*>), void>::type scn::v3::ranges::detail::advance_::fn::operator()<char const*, char const*>(char const*&, char const*) const
Line
Count
Source
274
896
    {
275
896
        fn::impl_i_s(i, bound, priority_tag<2>{});
276
896
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >), void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>) const
std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >), void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>) const
Line
Count
Source
274
96
    {
275
96
        fn::impl_i_s(i, bound, priority_tag<2>{});
276
96
    }
std::__1::enable_if<(input_or_output_iterator<wchar_t const*>)&&(sentinel_for<wchar_t const*, wchar_t const*>), void>::type scn::v3::ranges::detail::advance_::fn::operator()<wchar_t const*, wchar_t const*>(wchar_t const*&, wchar_t const*) const
Line
Count
Source
274
13.4k
    {
275
13.4k
        fn::impl_i_s(i, bound, priority_tag<2>{});
276
13.4k
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >), void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>) const
std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >), void>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>) const
Line
Count
Source
274
48
    {
275
48
        fn::impl_i_s(i, bound, priority_tag<2>{});
276
48
    }
277
278
    template <typename I, typename S>
279
    constexpr auto operator()(I& i, iter_difference_t<I> n, S bound) const
280
        -> std::enable_if_t<input_or_output_iterator<I> && sentinel_for<S, I>,
281
                            iter_difference_t<I>>
282
53.9k
    {
283
53.9k
        return n - fn::impl_i_n_s(i, n, bound);
284
53.9k
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::difference_type, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(sentinel_for<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>) const
std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>) const
Line
Count
Source
282
3.32k
    {
283
3.32k
        return n - fn::impl_i_n_s(i, n, bound);
284
3.32k
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>)&&(sentinel_for<scn::v3::ranges::default_sentinel_t, scn::v3::detail::basic_scan_buffer<char>::forward_iterator>), scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>(scn::v3::detail::basic_scan_buffer<char>::forward_iterator&, scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>::difference_type, scn::v3::ranges::default_sentinel_t) const
std::__1::enable_if<(input_or_output_iterator<char const*>)&&(sentinel_for<char const*, char const*>), scn::v3::ranges::incrementable_traits<char const*>::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<char const*, char const*>(char const*&, scn::v3::ranges::incrementable_traits<char const*>::difference_type, char const*) const
Line
Count
Source
282
49.9k
    {
283
49.9k
        return n - fn::impl_i_n_s(i, n, bound);
284
49.9k
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::difference_type, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(sentinel_for<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<wchar_t const*>)&&(sentinel_for<wchar_t const*, wchar_t const*>), scn::v3::ranges::incrementable_traits<wchar_t const*>::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<wchar_t const*, wchar_t const*>(wchar_t const*&, scn::v3::ranges::incrementable_traits<wchar_t const*>::difference_type, wchar_t const*) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>) const
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>)&&(sentinel_for<scn::v3::ranges::default_sentinel_t, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>), scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>(scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator&, scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type, scn::v3::ranges::default_sentinel_t) const
std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::difference_type, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true>) const
Line
Count
Source
282
724
    {
283
724
        return n - fn::impl_i_n_s(i, n, bound);
284
724
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >), scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::difference_type>::type scn::v3::ranges::detail::advance_::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >&, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::difference_type, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true>) const
285
};
286
}  // namespace detail::advance_
287
288
inline constexpr auto advance = detail::advance_::fn{};
289
290
namespace next_impl {
291
struct fn {
292
    template <typename I>
293
    constexpr auto operator()(I x) const
294
        -> std::enable_if_t<input_or_output_iterator<I>, I>
295
463M
    {
296
463M
        ++x;
297
463M
        return x;
298
463M
    }
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>, scn::v3::detail::basic_scan_buffer<char>::forward_iterator>::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>(scn::v3::detail::basic_scan_buffer<char>::forward_iterator) const
std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>) const
Line
Count
Source
295
1.91k
    {
296
1.91k
        ++x;
297
1.91k
        return x;
298
1.91k
    }
std::__1::enable_if<input_or_output_iterator<char const*>, char const*>::type scn::v3::ranges::next_impl::fn::operator()<char const*>(char const*) const
Line
Count
Source
295
48.8k
    {
296
48.8k
        ++x;
297
48.8k
        return x;
298
48.8k
    }
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>(scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator) const
std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>) const
Line
Count
Source
295
1.07k
    {
296
1.07k
        ++x;
297
1.07k
        return x;
298
1.07k
    }
std::__1::enable_if<input_or_output_iterator<wchar_t const*>, wchar_t const*>::type scn::v3::ranges::next_impl::fn::operator()<wchar_t const*>(wchar_t const*) const
Line
Count
Source
295
463M
    {
296
463M
        ++x;
297
463M
        return x;
298
463M
    }
299
300
    template <typename I>
301
    constexpr auto operator()(I x, iter_difference_t<I> n) const
302
        -> std::enable_if_t<input_or_output_iterator<I>, I>
303
130k
    {
304
130k
        ranges::advance(x, n);
305
130k
        return x;
306
130k
    }
std::__1::enable_if<input_or_output_iterator<char const*>, char const*>::type scn::v3::ranges::next_impl::fn::operator()<char const*>(char const*, scn::v3::ranges::incrementable_traits<char const*>::difference_type) const
Line
Count
Source
303
48.3k
    {
304
48.3k
        ranges::advance(x, n);
305
48.3k
        return x;
306
48.3k
    }
std::__1::enable_if<input_or_output_iterator<wchar_t const*>, wchar_t const*>::type scn::v3::ranges::next_impl::fn::operator()<wchar_t const*>(wchar_t const*, scn::v3::ranges::incrementable_traits<wchar_t const*>::difference_type) const
Line
Count
Source
303
82.1k
    {
304
82.1k
        ranges::advance(x, n);
305
82.1k
        return x;
306
82.1k
    }
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>, scn::v3::detail::basic_scan_buffer<char>::forward_iterator>::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>(scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<char>::forward_iterator>::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>(scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::incrementable_traits<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >::difference_type) const
Unexecuted instantiation: std::__1::enable_if<input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v3::ranges::incrementable_traits<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >::difference_type) const
307
308
    template <typename I, typename S>
309
    constexpr auto operator()(I x, S bound) const
310
        -> std::enable_if_t<input_or_output_iterator<I> && sentinel_for<S, I>,
311
                            I>
312
14.4k
    {
313
14.4k
        ranges::advance(x, bound);
314
14.4k
        return x;
315
14.4k
    }
std::__1::enable_if<(input_or_output_iterator<char const*>)&&(sentinel_for<char const*, char const*>), char const*>::type scn::v3::ranges::next_impl::fn::operator()<char const*, char const*>(char const*, char const*) const
Line
Count
Source
312
896
    {
313
896
        ranges::advance(x, bound);
314
896
        return x;
315
896
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >), scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>) const
std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >), scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>) const
Line
Count
Source
312
96
    {
313
96
        ranges::advance(x, bound);
314
96
        return x;
315
96
    }
std::__1::enable_if<(input_or_output_iterator<wchar_t const*>)&&(sentinel_for<wchar_t const*, wchar_t const*>), wchar_t const*>::type scn::v3::ranges::next_impl::fn::operator()<wchar_t const*, wchar_t const*>(wchar_t const*, wchar_t const*) const
Line
Count
Source
312
13.4k
    {
313
13.4k
        ranges::advance(x, bound);
314
13.4k
        return x;
315
13.4k
    }
Unexecuted instantiation: std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >), scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>) const
std::__1::enable_if<(input_or_output_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >)&&(sentinel_for<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >), scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >::type scn::v3::ranges::next_impl::fn::operator()<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>) const
Line
Count
Source
312
48
    {
313
48
        ranges::advance(x, bound);
314
48
        return x;
315
48
    }
316
317
    template <typename I, typename S>
318
    constexpr auto operator()(I x, iter_difference_t<I> n, S bound) const
319
        -> std::enable_if_t<input_or_output_iterator<I> && sentinel_for<S, I>,
320
                            I>
321
    {
322
        ranges::advance(x, n, bound);
323
        return x;
324
    }
325
};
326
}  // namespace next_impl
327
328
inline constexpr next_impl::fn next{};
329
330
// prev, for forward_iterators
331
namespace detail::prev_backtrack_ {
332
struct fn {
333
private:
334
    template <typename It>
335
    static constexpr auto impl(It it, It, priority_tag<2>)
336
        -> std::enable_if_t<bidirectional_iterator<It>, It>
337
    {
338
        --it;
339
        return it;
340
    }
341
342
    template <typename It>
343
    static constexpr auto impl(It it, It beg, priority_tag<1>)
344
        -> remove_cvref_t<decltype((void)beg.batch_advance(42), it)>
345
    {
346
        return beg.batch_advance(it.position() - 1);
347
    }
348
349
    template <typename It>
350
    static constexpr auto impl(It it, It beg, priority_tag<0>)
351
        -> std::enable_if_t<forward_iterator<It>, It>
352
    {
353
        SCN_EXPECT(it != beg);
354
355
        while (true) {
356
            auto tmp = beg;
357
            ++beg;
358
            if (beg == it) {
359
                return tmp;
360
            }
361
        }
362
    }
363
364
public:
365
    template <typename It>
366
    constexpr auto operator()(It it, It beg) const
367
        -> decltype(fn::impl(it, beg, priority_tag<2>{}))
368
    {
369
        return fn::impl(it, beg, priority_tag<2>{});
370
    }
371
};
372
}  // namespace detail::prev_backtrack_
373
374
inline constexpr auto prev_backtrack = detail::prev_backtrack_::fn{};
375
376
// operator<, for forward_iterators
377
namespace detail::less_backtrack_ {
378
struct fn {
379
private:
380
    template <typename It>
381
    static constexpr auto impl(It lhs, It rhs, It, priority_tag<2>)
382
        -> decltype(static_cast<void>(lhs < rhs), true)
383
    {
384
        return lhs < rhs;
385
    }
386
387
    template <typename It>
388
    static constexpr auto impl(It lhs, It rhs, It, priority_tag<1>)
389
        -> decltype(static_cast<void>(lhs.position() < rhs.position()), true)
390
    {
391
        return lhs.position() < rhs.position();
392
    }
393
394
    template <typename It>
395
    static constexpr auto impl(It lhs, It rhs, It beg, priority_tag<0>)
396
        -> std::enable_if_t<ranges::forward_iterator<It>, bool>
397
    {
398
        while (true) {
399
            if (beg == rhs) {
400
                return false;
401
            }
402
            if (beg == lhs) {
403
                return true;
404
            }
405
            ++beg;
406
        }
407
    }
408
409
public:
410
    template <typename It>
411
    constexpr auto operator()(It lhs, It rhs, It beg) const
412
        -> decltype(fn::impl(lhs, rhs, beg, priority_tag<2>{}))
413
    {
414
        return fn::impl(lhs, rhs, beg, priority_tag<2>{});
415
    }
416
};
417
}  // namespace detail::less_backtrack_
418
419
inline constexpr auto less_backtrack = detail::less_backtrack_::fn{};
420
421
}  // namespace ranges
422
423
/////////////////////////////////////////////////////////////////
424
// ASCII-only locale-free <cctype>
425
/////////////////////////////////////////////////////////////////
426
427
namespace impl {
428
inline constexpr std::array<bool, 256> is_ascii_space_lookup = {
429
    {false, false, false, false, false, false, false, false, false, true,
430
     true,  true,  true,  true,  false, false, false, false, false, false,
431
     false, false, false, false, false, false, false, false, false, false,
432
     false, false, true,  false, false, false, false, false, false, false,
433
     false, false, false, false, false, false, false, false, false, false,
434
     false, false, false, false, false, false, false, false, false, false,
435
     false, false, false, false, false, false, false, false, false, false,
436
     false, false, false, false, false, false, false, false, false, false,
437
     false, false, false, false, false, false, false, false, false, false,
438
     false, false, false, false, false, false, false, false, false, false,
439
     false, false, false, false, false, false, false, false, false, false,
440
     false, false, false, false, false, false, false, false, false, false,
441
     false, false, false, false, false, false, false, false, false, false,
442
     false, false, false, false, false, false, false, false, false, false,
443
     false, false, false, false, false, false, false, false, false, false,
444
     false, false, false, false, false, false, false, false, false, false,
445
     false, false, false, false, false, false, false, false, false, false,
446
     false, false, false, false, false, false, false, false, false, false,
447
     false, false, false, false, false, false, false, false, false, false,
448
     false, false, false, false, false, false, false, false, false, false,
449
     false, false, false, false, false, false, false, false, false, false,
450
     false, false, false, false, false, false, false, false, false, false,
451
     false, false, false, false, false, false, false, false, false, false,
452
     false, false, false, false, false, false, false, false, false, false,
453
     false, false, false, false, false, false, false, false, false, false,
454
     false, false, false, false, false, false}};
455
456
constexpr bool is_ascii_space(char ch) noexcept
457
40.2k
{
458
40.2k
    return is_ascii_space_lookup[static_cast<size_t>(
459
40.2k
        static_cast<unsigned char>(ch))];
460
40.2k
}
461
462
constexpr bool is_ascii_space(wchar_t ch) noexcept
463
0
{
464
0
    return ch == 0x20 || (ch >= 0x09 && ch <= 0x0d);
465
0
}
466
467
constexpr bool is_ascii_char(char ch) noexcept
468
356k
{
469
356k
    return static_cast<unsigned char>(ch) <= 127;
470
356k
}
471
472
constexpr bool is_ascii_char(wchar_t ch) noexcept
473
1.44k
{
474
1.44k
#if WCHAR_MIN < 0
475
1.44k
    return ch >= 0 && ch <= 127;
476
#else
477
    return ch <= 127;
478
#endif
479
1.44k
}
480
481
constexpr bool is_ascii_char(char32_t cp) noexcept
482
391k
{
483
391k
    return cp <= 127;
484
391k
}
485
486
/////////////////////////////////////////////////////////////////
487
// <bits>
488
/////////////////////////////////////////////////////////////////
489
490
inline int count_trailing_zeroes(uint64_t val)
491
0
{
492
0
    SCN_EXPECT(val != 0);
493
0
#if SCN_HAS_BITOPS
494
0
    return std::countr_zero(val);
495
0
#elif SCN_GCC_COMPAT
496
0
    return __builtin_ctzll(val);
497
0
#elif SCN_MSVC && SCN_WINDOWS_64BIT
498
0
    DWORD ret{};
499
0
    _BitScanForward64(&ret, val);
500
0
    return static_cast<int>(ret);
501
0
#elif SCN_MSVC && !SCN_WINDOWS_64BIT
502
0
    DWORD ret{};
503
0
    if (_BitScanForward(&ret, static_cast<uint32_t>(val))) {
504
0
        return static_cast<int>(ret);
505
0
    }
506
0
507
0
    _BitScanForward(&ret, static_cast<uint32_t>(val >> 32));
508
0
    return static_cast<int>(ret + 32);
509
0
#elif SCN_POSIX
510
0
    return ::ctzll(val);
511
0
#else
512
0
#define SCN_HAS_BITS_CTZ 0
513
0
    SCN_EXPECT(false);
514
0
    SCN_UNREACHABLE;
515
0
#endif
516
0
}
517
518
#ifndef SCN_HAS_BITS_CTZ
519
#define SCN_HAS_BITS_CTZ 1
520
#endif
521
522
constexpr uint64_t has_zero_byte(uint64_t word)
523
0
{
524
0
    return (word - 0x0101010101010101ull) & ~word & 0x8080808080808080ull;
525
0
}
526
527
constexpr uint64_t has_byte_between(uint64_t word, uint8_t a, uint8_t b)
528
0
{
529
0
    const auto m = static_cast<uint64_t>(a) - 1,
530
0
               n = static_cast<uint64_t>(b) + 1;
531
0
    return (((~0ull / 255 * (127 + (n)) - ((word) & ~0ull / 255 * 127)) &
532
0
             ~(word) &
533
0
             (((word) & ~0ull / 255 * 127) + ~0ull / 255 * (127 - (m)))) &
534
0
            (~0ull / 255 * 128));
535
0
}
536
537
constexpr uint64_t has_byte_greater(uint64_t word, uint8_t n)
538
33.3k
{
539
33.3k
    return (word + ~0ull / 255 * (127 - n) | word) & ~0ull / 255 * 128;
540
33.3k
}
541
542
inline size_t get_index_of_first_nonmatching_byte(uint64_t word)
543
0
{
544
0
    word ^= 0x8080808080808080ull;
545
0
    if (word == 0) {
546
0
        return 8;
547
0
    }
548
0
    return static_cast<size_t>(count_trailing_zeroes(word)) / 8;
549
0
}
550
551
inline size_t get_index_of_first_matching_byte(uint64_t word, uint64_t pattern)
552
0
{
553
0
    constexpr auto mask = 0x7f7f7f7f7f7f7f7full;
554
0
    auto input = word ^ pattern;
555
0
    auto tmp = (input & mask) + mask;
556
0
    tmp = ~(tmp | input | mask);
557
0
    return static_cast<size_t>(count_trailing_zeroes(tmp)) / 8;
558
0
}
559
560
constexpr uint32_t log2_fast(uint32_t val)
561
0
{
562
0
    constexpr uint8_t lookup[] = {0,  9,  1,  10, 13, 21, 2,  29, 11, 14, 16,
563
0
                                  18, 22, 25, 3,  30, 8,  12, 20, 28, 15, 17,
564
0
                                  24, 7,  19, 27, 23, 6,  26, 5,  4,  31};
565
0
566
0
    val |= val >> 1;
567
0
    val |= val >> 2;
568
0
    val |= val >> 4;
569
0
    val |= val >> 8;
570
0
    val |= val >> 16;
571
0
572
0
    return static_cast<uint32_t>(lookup[(val * 0x07c4acddu) >> 27]);
573
0
}
574
575
constexpr uint32_t log2_pow2_fast(uint32_t val)
576
0
{
577
0
    constexpr uint8_t lookup[] = {0,  1,  28, 2,  29, 14, 24, 3,  30, 22, 20,
578
0
                                  15, 25, 17, 4,  8,  31, 27, 13, 23, 21, 19,
579
0
                                  16, 7,  26, 12, 18, 6,  11, 5,  10, 9};
580
0
581
0
    return static_cast<uint32_t>(lookup[(val * 0x077cb531u) >> 27]);
582
0
}
583
584
constexpr uint64_t byteswap(uint64_t val)
585
0
{
586
0
    return (val & 0xFF00000000000000) >> 56 | (val & 0x00FF000000000000) >> 40 |
587
0
           (val & 0x0000FF0000000000) >> 24 | (val & 0x000000FF00000000) >> 8 |
588
0
           (val & 0x00000000FF000000) << 8 | (val & 0x0000000000FF0000) << 24 |
589
0
           (val & 0x000000000000FF00) << 40 | (val & 0x00000000000000FF) << 56;
590
0
}
591
592
/////////////////////////////////////////////////////////////////
593
// <function_ref>
594
/////////////////////////////////////////////////////////////////
595
596
namespace fnref_detail {
597
template <class T>
598
inline constexpr auto select_param_type = [] {
599
    if constexpr (std::is_trivially_copyable_v<T>) {
600
        return detail::type_identity<T>();
601
    }
602
    else {
603
        return std::add_rvalue_reference<T>();
604
    }
605
};
606
607
template <class T>
608
using param_t =
609
    typename std::invoke_result_t<decltype(select_param_type<T>)>::type;
610
611
template <typename Sig>
612
struct qual_fn_sig;
613
614
template <typename R, typename... Args>
615
struct qual_fn_sig<R(Args...)> {
616
    using function = R(Args...);
617
618
    static constexpr bool is_noexcept = false;
619
620
    template <typename... T>
621
    static constexpr bool is_invocable_using =
622
        std::is_invocable_r_v<R, T..., Args...>;
623
624
    template <typename T>
625
    using cv = T;
626
};
627
628
template <typename R, typename... Args>
629
struct qual_fn_sig<R(Args...) noexcept> {
630
    using function = R(Args...);
631
632
    static constexpr bool is_noexcept = true;
633
634
    template <typename... T>
635
    static constexpr bool is_invocable_using =
636
        std::is_nothrow_invocable_r_v<R, T..., Args...>;
637
638
    template <typename T>
639
    using cv = T;
640
};
641
642
template <typename R, typename... Args>
643
struct qual_fn_sig<R(Args...) const> : qual_fn_sig<R(Args...)> {
644
    template <typename T>
645
    using cv = T const;
646
};
647
648
template <typename R, typename... Args>
649
struct qual_fn_sig<R(Args...) const noexcept>
650
    : qual_fn_sig<R(Args...) noexcept> {
651
    template <typename T>
652
    using cv = T const;
653
};
654
655
struct base {
656
    union storage {
657
        constexpr storage() = default;
658
659
        template <typename T, std::enable_if_t<std::is_object_v<T>>* = nullptr>
660
329k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
329k
        {
662
329k
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2INSt3__110__not_fn_tINS1_12function_refIFbcES9_EEEETnPNS6_9enable_ifIXsr3stdE11is_object_vIT_EEvE4typeELPv0EEEPSD_
Line
Count
Source
660
4.23k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
4.23k
        {
662
4.23k
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2INSt3__110__not_fn_tINS1_12function_refIFbDiES9_EEEETnPNS6_9enable_ifIXsr3stdE11is_object_vIT_EEvE4typeELPv0EEEPSD_
Line
Count
Source
660
119k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
119k
        {
662
119k
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_EUlDiE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEENS1_15take_width_viewINSA_ISG_SH_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_iEUlcE_TnPNSQ_9enable_ifIXsr3stdE11is_object_vISS_EEvE4typeELPv0EEEPSS_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_iEUlcE_TnPNSI_9enable_ifIXsr3stdE11is_object_vISK_EEvE4typeELPv0EEEPSK_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_20calculate_text_widthIcEEmNSt3__117basic_string_viewIT_NS7_11char_traitsIS9_EEEEEUlDiE_TnPNS7_9enable_ifIXsr3stdE11is_object_vIS9_EEvE4typeELPv0EEEPS9_
Line
Count
Source
660
25.3k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
25.3k
        {
662
25.3k
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESH_EUlDiE_TnPNS8_9enable_ifIXsr3stdE11is_object_vISH_EEvE4typeELPv0EEEPSH_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESG_EUlDiE_TnPNS8_9enable_ifIXsr3stdE11is_object_vISG_EEvE4typeELPv0EEEPSG_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSE_EENS1_15take_width_viewINSA_ISE_SE_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_iEUlcE_TnPNSN_9enable_ifIXsr3stdE11is_object_vISP_EEvE4typeELPv0EEEPSP_
Line
Count
Source
660
796
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
796
        {
662
796
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_TnPNSG_9enable_ifIXsr3stdE11is_object_vISI_EEvE4typeELPv0EEEPSI_
Line
Count
Source
660
480
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
480
        {
662
480
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_EUlcE_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE0_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEST_NSR_17basic_string_viewIcNSR_11char_traitsIcEEEEEUlcE_TnPNSR_9enable_ifIXsr3stdE11is_object_vIST_EEvE4typeELPv0EEEPST_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE0_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_EUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEEUlcE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlcE_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE0_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
Line
Count
Source
660
4
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
4
        {
662
4
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESQ_NSO_17basic_string_viewIcNSO_11char_traitsIcEEEEEUlcE_TnPNSO_9enable_ifIXsr3stdE11is_object_vISQ_EEvE4typeELPv0EEEPSQ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE0_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
Line
Count
Source
660
264
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
264
        {
662
264
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEEEUlcE_TnPNSG_9enable_ifIXsr3stdE11is_object_vISI_EEvE4typeELPv0EEEPSI_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
26
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
26
        {
662
26
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
8
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
8
        {
662
8
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
260
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
260
        {
662
260
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
10
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
10
        {
662
10
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
278
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
278
        {
662
278
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlcE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_TnPNSG_9enable_ifIXsr3stdE11is_object_vISI_EEvE4typeELPv0EEEPSI_
Line
Count
Source
660
732
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
732
        {
662
732
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlcE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
34
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
34
        {
662
34
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
30
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
30
        {
662
30
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlcE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlcE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
34
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
34
        {
662
34
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
30
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
30
        {
662
30
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlcE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlcE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
34
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
34
        {
662
34
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
30
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
30
        {
662
30
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlcE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlcE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
_ZN3scn2v34impl12fnref_detail4base7storageC2INSt3__110__not_fn_tINS1_12function_refIFbwES9_EEEETnPNS6_9enable_ifIXsr3stdE11is_object_vIT_EEvE4typeELPv0EEEPSD_
Line
Count
Source
660
1.37k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
1.37k
        {
662
1.37k
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_EUlDiE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEENS1_15take_width_viewINSA_ISG_SH_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_iEUlwE_TnPNSQ_9enable_ifIXsr3stdE11is_object_vISS_EEvE4typeELPv0EEEPSS_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_iEUlwE_TnPNSI_9enable_ifIXsr3stdE11is_object_vISK_EEvE4typeELPv0EEEPSK_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_20calculate_text_widthIwEEmNSt3__117basic_string_viewIT_NS7_11char_traitsIS9_EEEEEUlDiE_TnPNS7_9enable_ifIXsr3stdE11is_object_vIS9_EEvE4typeELPv0EEEPS9_
Line
Count
Source
660
4.17k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
4.17k
        {
662
4.17k
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESH_EUlDiE_TnPNS8_9enable_ifIXsr3stdE11is_object_vISH_EEvE4typeELPv0EEEPSH_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESG_EUlDiE_TnPNS8_9enable_ifIXsr3stdE11is_object_vISG_EEvE4typeELPv0EEEPSG_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESE_EUlDiE_TnPNS7_9enable_ifIXsr3stdE11is_object_vISE_EEvE4typeELPv0EEEPSE_
Line
Count
Source
660
2.57k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
2.57k
        {
662
2.57k
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSE_EENS1_15take_width_viewINSA_ISE_SE_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_iEUlwE_TnPNSN_9enable_ifIXsr3stdE11is_object_vISP_EEvE4typeELPv0EEEPSP_
Line
Count
Source
660
422
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
422
        {
662
422
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_TnPNSG_9enable_ifIXsr3stdE11is_object_vISI_EEvE4typeELPv0EEEPSI_
Line
Count
Source
660
200
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
200
        {
662
200
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESG_EUlDiE_TnPNSE_9enable_ifIXsr3stdE11is_object_vISG_EEvE4typeELPv0EEEPSG_
Line
Count
Source
660
110k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
110k
        {
662
110k
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_EUlwE_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE0_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEST_NSR_17basic_string_viewIcNSR_11char_traitsIcEEEEEUlwE_TnPNSR_9enable_ifIXsr3stdE11is_object_vIST_EEvE4typeELPv0EEEPST_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE0_TnPNSS_9enable_ifIXsr3stdE11is_object_vISU_EEvE4typeELPv0EEEPSU_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_EUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEEUlwE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlwE_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE0_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
Line
Count
Source
660
6
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
6
        {
662
6
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESQ_NSO_17basic_string_viewIcNSO_11char_traitsIcEEEEEUlwE_TnPNSO_9enable_ifIXsr3stdE11is_object_vISQ_EEvE4typeELPv0EEEPSQ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE0_TnPNSP_9enable_ifIXsr3stdE11is_object_vISR_EEvE4typeELPv0EEEPSR_
Line
Count
Source
660
136
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
136
        {
662
136
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEfEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEEEUlwE_TnPNSG_9enable_ifIXsr3stdE11is_object_vISI_EEvE4typeELPv0EEEPSI_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
6
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
6
        {
662
6
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
8
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
8
        {
662
8
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEdEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
134
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
134
        {
662
134
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
8
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
8
        {
662
8
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
338
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
338
        {
662
338
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERT0_NSE_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEeEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlwE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_TnPNSG_9enable_ifIXsr3stdE11is_object_vISI_EEvE4typeELPv0EEEPSI_
Line
Count
Source
660
372
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
372
        {
662
372
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlwE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
20
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
20
        {
662
20
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESG_EUlDiE_TnPNSE_9enable_ifIXsr3stdE11is_object_vISG_EEvE4typeELPv0EEEPSG_
Line
Count
Source
660
40.2k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
40.2k
        {
662
40.2k
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
36
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
36
        {
662
36
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlwE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlwE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
20
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
20
        {
662
20
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
36
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
36
        {
662
36
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlwE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlwE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlwE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlwE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPSL_
Line
Count
Source
660
20
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
20
        {
662
20
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
36
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
36
        {
662
36
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_until_classic_spaceINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESE_EUlDiE_TnPNS7_9enable_ifIXsr3stdE11is_object_vISE_EEvE4typeELPv0EEEPSE_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
634
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
634
        {
662
634
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
1.94k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
1.94k
        {
662
1.94k
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
13.0k
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
13.0k
        {
662
13.0k
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPSJ_
Line
Count
Source
660
970
        constexpr explicit storage(T* p) noexcept : m_p(p)
661
970
        {
662
970
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPSM_
663
664
        template <typename T, std::enable_if_t<std::is_object_v<T>>* = nullptr>
665
7.80k
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
7.80k
        {
667
7.80k
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESM_lRKNSC_9fill_typeEbEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPKSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_lRKNSB_9fill_typeEbEUlcE_TnPNSI_9enable_ifIXsr3stdE11is_object_vISK_EEvE4typeELPv0EEEPKSK_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEENS0_13scan_expectedINS8_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlcE_TnPNS8_9enable_ifIXsr3stdE11is_object_vISH_EEvE4typeELPv0EEEPKSH_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_9skip_fillINSt3__117basic_string_viewIcNS7_11char_traitsIcEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbEUlcE_TnPNS7_9enable_ifIXsr3stdE11is_object_vISF_EEvE4typeELPv0EEEPKSF_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlcE_TnPNSF_9enable_ifIXsr3stdE11is_object_vISH_EEvE4typeELPv0EEEPKSH_
Line
Count
Source
665
2.35k
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
2.35k
        {
667
2.35k
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlDiE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPKSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlcE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPKSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlDiE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPKSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlcE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPKSM_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlDiE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPKSL_
Line
Count
Source
665
360
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
360
        {
667
360
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlcE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPKSL_
Line
Count
Source
665
306
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
306
        {
667
306
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPKSJ_
Line
Count
Source
665
2.71k
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
2.71k
        {
667
2.71k
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPKSJ_
Line
Count
Source
665
276
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
276
        {
667
276
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESM_lRKNSC_9fill_typeEbEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPKSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_lRKNSB_9fill_typeEbEUlwE_TnPNSI_9enable_ifIXsr3stdE11is_object_vISK_EEvE4typeELPv0EEEPKSK_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEENS0_13scan_expectedINS8_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlwE_TnPNS8_9enable_ifIXsr3stdE11is_object_vISH_EEvE4typeELPv0EEEPKSH_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_9skip_fillINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbEUlwE_TnPNS7_9enable_ifIXsr3stdE11is_object_vISF_EEvE4typeELPv0EEEPKSF_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlwE_TnPNSF_9enable_ifIXsr3stdE11is_object_vISH_EEvE4typeELPv0EEEPKSH_
Line
Count
Source
665
486
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
486
        {
667
486
        }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlDiE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPKSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlwE_TnPNSM_9enable_ifIXsr3stdE11is_object_vISO_EEvE4typeELPv0EEEPKSO_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlDiE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPKSM_
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlwE_TnPNSK_9enable_ifIXsr3stdE11is_object_vISM_EEvE4typeELPv0EEEPKSM_
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlDiE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPKSL_
Line
Count
Source
665
132
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
132
        {
667
132
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlwE_TnPNSJ_9enable_ifIXsr3stdE11is_object_vISL_EEvE4typeELPv0EEEPKSL_
Line
Count
Source
665
66
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
66
        {
667
66
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlDiE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPKSJ_
Line
Count
Source
665
294
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
294
        {
667
294
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPKSJ_
Line
Count
Source
665
96
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
96
        {
667
96
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNS0_6detail9fill_typeEbEUlcE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPKSJ_
Line
Count
Source
665
482
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
482
        {
667
482
        }
_ZN3scn2v34impl12fnref_detail4base7storageC2IZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNS0_6detail9fill_typeEbEUlwE_TnPNSH_9enable_ifIXsr3stdE11is_object_vISJ_EEvE4typeELPv0EEEPKSJ_
Line
Count
Source
665
234
        constexpr explicit storage(const T* p) noexcept : m_cp(p)
666
234
        {
667
234
        }
668
669
        template <typename F,
670
                  std::enable_if_t<std::is_function_v<F>>* = nullptr>
671
        constexpr explicit storage(F* f) noexcept
672
            : m_fp(reinterpret_cast<decltype(m_fp)>(f))
673
        {
674
        }
675
676
        void* m_p{nullptr};
677
        const void* m_cp;
678
        void (*m_fp)();
679
    };
680
681
    template <typename T>
682
    static constexpr auto get(storage s)
683
1.37M
    {
684
1.37M
        if constexpr (std::is_const_v<T>) {
685
406k
            return static_cast<T*>(s.m_cp);
686
        }
687
968k
        else if constexpr (std::is_object_v<T>) {
688
968k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
1.37M
    }
auto scn::v3::impl::fnref_detail::base::get<std::__1::__not_fn_t<scn::v3::impl::function_ref<bool (char), bool (char)> > >(scn::v3::impl::fnref_detail::base::storage)
Line
Count
Source
683
8.15k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
8.15k
        else if constexpr (std::is_object_v<T>) {
688
8.15k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
8.15k
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESL_lRKNSB_9fill_typeEbEUlcE_EEDaNS3_7storageE
auto scn::v3::impl::fnref_detail::base::get<std::__1::__not_fn_t<scn::v3::impl::function_ref<bool (char32_t), bool (char32_t)> > >(scn::v3::impl::fnref_detail::base::storage)
Line
Count
Source
683
505k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
505k
        else if constexpr (std::is_object_v<T>) {
688
505k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
505k
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS6_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNSA_9fill_typeEbEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEENS1_15take_width_viewINS9_ISF_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_iEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_iEUlcE_EEDaNS3_7storageE
auto scn::v3::impl::fnref_detail::base::get<scn::v3::impl::calculate_text_width<char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >)::{lambda(char32_t)#1}>(scn::v3::impl::fnref_detail::base::storage)
Line
Count
Source
683
52.7k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
52.7k
        else if constexpr (std::is_object_v<T>) {
688
52.7k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
52.7k
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIcNS7_11char_traitsIcEEEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS0_6detail9fill_typeEbEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS6_INSt3__117basic_string_viewIcNS7_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESG_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIcNS7_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESF_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNS1_9skip_fillINSt3__117basic_string_viewIcNS6_11char_traitsIcEEEEEENS0_13scan_expectedINS6_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESE_lRKNS0_6detail9fill_typeEbEUlcE_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSD_EENS1_15take_width_viewINS9_ISD_SD_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_iEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
796
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
796
        else if constexpr (std::is_object_v<T>) {
688
796
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
796
    }
_ZN3scn2v34impl12fnref_detail4base3getIKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS0_6detail9fill_typeEbEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
2.77k
    {
684
2.77k
        if constexpr (std::is_const_v<T>) {
685
2.77k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
2.77k
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
1.38k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
1.38k
        else if constexpr (std::is_object_v<T>) {
688
1.38k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
1.38k
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_EUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlcE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESS_NSQ_17basic_string_viewIcNSQ_11char_traitsIcEEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlcE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_EUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlcE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NSI_17basic_string_viewIcNSI_11char_traitsIcEEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlcE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_EUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlcE_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlcE0_EEDaNS3_7storageE
Line
Count
Source
683
4
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
4
        else if constexpr (std::is_object_v<T>) {
688
4
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
4
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESP_NSN_17basic_string_viewIcNSN_11char_traitsIcEEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlcE_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlcE0_EEDaNS3_7storageE
Line
Count
Source
683
264
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
264
        else if constexpr (std::is_object_v<T>) {
688
264
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
264
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_EUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlcE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlcE_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlcE0_EEDaNS3_7storageE
Line
Count
Source
683
26
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
26
        else if constexpr (std::is_object_v<T>) {
688
26
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
26
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Line
Count
Source
683
8
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
8
        else if constexpr (std::is_object_v<T>) {
688
8
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
8
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Line
Count
Source
683
260
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
260
        else if constexpr (std::is_object_v<T>) {
688
260
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
260
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Line
Count
Source
683
10
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
10
        else if constexpr (std::is_object_v<T>) {
688
10
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
10
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Line
Count
Source
683
278
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
278
        else if constexpr (std::is_object_v<T>) {
688
278
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
278
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_12basic_stringIT0_NSL_11char_traitsISX_EENSL_9allocatorISX_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_NS6_12specs_helperEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISV_EENSJ_9allocatorISV_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS6_12specs_helperEEUlcE_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
7.66k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
7.66k
        else if constexpr (std::is_object_v<T>) {
688
7.66k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
7.66k
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISV_EENSI_9allocatorISV_EEEEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
782
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
782
        else if constexpr (std::is_object_v<T>) {
688
782
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
782
    }
_ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
15.1k
    {
684
15.1k
        if constexpr (std::is_const_v<T>) {
685
15.1k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
15.1k
    }
_ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS6_12specs_helperEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
5.95k
    {
684
5.95k
        if constexpr (std::is_const_v<T>) {
685
5.95k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
5.95k
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsIST_EENSG_9allocatorIST_EEEEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
442
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
442
        else if constexpr (std::is_object_v<T>) {
688
442
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
442
    }
_ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
370k
    {
684
370k
        if constexpr (std::is_const_v<T>) {
685
370k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
370k
    }
_ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS6_12specs_helperEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
3.48k
    {
684
3.48k
        if constexpr (std::is_const_v<T>) {
685
3.48k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
3.48k
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_12basic_stringIT0_NSL_11char_traitsISX_EENSL_9allocatorISX_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISV_EENSJ_9allocatorISV_EEEEEUlcE_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISV_EENSI_9allocatorISV_EEEEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
782
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
782
        else if constexpr (std::is_object_v<T>) {
688
782
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
782
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsIST_EENSG_9allocatorIST_EEEEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
442
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
442
        else if constexpr (std::is_object_v<T>) {
688
442
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
442
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_17basic_string_viewIT0_NSL_11char_traitsISX_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISV_EEEEEUlcE_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISV_EEEEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
782
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
782
        else if constexpr (std::is_object_v<T>) {
688
782
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
782
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsIST_EEEEEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
442
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
442
        else if constexpr (std::is_object_v<T>) {
688
442
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
442
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_17basic_string_viewIT0_NSL_11char_traitsISX_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISV_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISV_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsIST_EEEEEUlcE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_EEDaNS3_7storageE
auto scn::v3::impl::fnref_detail::base::get<std::__1::__not_fn_t<scn::v3::impl::function_ref<bool (wchar_t), bool (wchar_t)> > >(scn::v3::impl::fnref_detail::base::storage)
Line
Count
Source
683
2.91k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
2.91k
        else if constexpr (std::is_object_v<T>) {
688
2.91k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
2.91k
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESL_lRKNSB_9fill_typeEbEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS6_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNSA_9fill_typeEbEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEENS1_15take_width_viewINS9_ISF_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_iEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_iEUlwE_EEDaNS3_7storageE
auto scn::v3::impl::fnref_detail::base::get<scn::v3::impl::calculate_text_width<wchar_t>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)::{lambda(char32_t)#1}>(scn::v3::impl::fnref_detail::base::storage)
Line
Count
Source
683
7.34k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
7.34k
        else if constexpr (std::is_object_v<T>) {
688
7.34k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
7.34k
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS0_6detail9fill_typeEbEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS6_INSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESG_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESF_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNS1_9skip_fillINSt3__117basic_string_viewIwNS6_11char_traitsIwEEEEEENS0_13scan_expectedINS6_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESE_lRKNS0_6detail9fill_typeEbEUlwE_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINSt3__117basic_string_viewIwNS6_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS6_9add_constIT_E4typeEEEEESD_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
3.38k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
3.38k
        else if constexpr (std::is_object_v<T>) {
688
3.38k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
3.38k
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSD_EENS1_15take_width_viewINS9_ISD_SD_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_iEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
422
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
422
        else if constexpr (std::is_object_v<T>) {
688
422
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
422
    }
_ZN3scn2v34impl12fnref_detail4base3getIKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS0_6detail9fill_typeEbEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
928
    {
684
928
        if constexpr (std::is_const_v<T>) {
685
928
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
928
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
248
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
248
        else if constexpr (std::is_object_v<T>) {
688
248
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
248
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
113k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
113k
        else if constexpr (std::is_object_v<T>) {
688
113k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
113k
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_EUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlwE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESS_NSQ_17basic_string_viewIcNSQ_11char_traitsIcEEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEENS1_15take_width_viewINSB_ISH_SI_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEST_bEUlwE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_EUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlwE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NSI_17basic_string_viewIcNSI_11char_traitsIcEEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_bEUlwE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_EUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlwE_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlwE0_EEDaNS3_7storageE
Line
Count
Source
683
6
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
6
        else if constexpr (std::is_object_v<T>) {
688
6
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
6
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESP_NSN_17basic_string_viewIcNSN_11char_traitsIcEEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlwE_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSF_EENS1_15take_width_viewINSB_ISF_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bEUlwE0_EEDaNS3_7storageE
Line
Count
Source
683
136
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
136
        else if constexpr (std::is_object_v<T>) {
688
136
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
136
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_EUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlwE0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlwE_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEENS1_14parse_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bEUlwE0_EEDaNS3_7storageE
Line
Count
Source
683
6
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
6
        else if constexpr (std::is_object_v<T>) {
688
6
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
6
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Line
Count
Source
683
8
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
8
        else if constexpr (std::is_object_v<T>) {
688
8
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
8
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Line
Count
Source
683
134
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
134
        else if constexpr (std::is_object_v<T>) {
688
134
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
134
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Line
Count
Source
683
8
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
8
        else if constexpr (std::is_object_v<T>) {
688
8
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
8
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Line
Count
Source
683
338
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
338
        else if constexpr (std::is_object_v<T>) {
688
338
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
338
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERT0_NSD_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERT0_NSQ_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERT0_NSO_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E0_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_12basic_stringIT0_NSL_11char_traitsISX_EENSL_9allocatorISX_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_NS6_12specs_helperEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISV_EENSJ_9allocatorISV_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS6_12specs_helperEEUlwE_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
10.2k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
10.2k
        else if constexpr (std::is_object_v<T>) {
688
10.2k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
10.2k
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISV_EENSI_9allocatorISV_EEEEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
350
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
350
        else if constexpr (std::is_object_v<T>) {
688
350
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
350
    }
_ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
678
    {
684
678
        if constexpr (std::is_const_v<T>) {
685
678
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
678
    }
_ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS6_12specs_helperEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
168
    {
684
168
        if constexpr (std::is_const_v<T>) {
685
168
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
168
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
228k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
228k
        else if constexpr (std::is_object_v<T>) {
688
228k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
228k
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsIST_EENSG_9allocatorIST_EEEEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
486
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
486
        else if constexpr (std::is_object_v<T>) {
688
486
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
486
    }
_ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS6_12specs_helperEEUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
4.29k
    {
684
4.29k
        if constexpr (std::is_const_v<T>) {
685
4.29k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
4.29k
    }
_ZN3scn2v34impl12fnref_detail4base3getIKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS6_12specs_helperEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
1.27k
    {
684
1.27k
        if constexpr (std::is_const_v<T>) {
685
1.27k
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
1.27k
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_12basic_stringIT0_NSL_11char_traitsISX_EENSL_9allocatorISX_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISV_EENSJ_9allocatorISV_EEEEEUlwE_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISV_EENSI_9allocatorISV_EEEEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
350
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
350
        else if constexpr (std::is_object_v<T>) {
688
350
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
350
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsIST_EENSG_9allocatorIST_EEEEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
486
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
486
        else if constexpr (std::is_object_v<T>) {
688
486
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
486
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_17basic_string_viewIT0_NSL_11char_traitsISX_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISV_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISV_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEcEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsIST_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_RKNSD_12format_specsERNSL_17basic_string_viewIT0_NSL_11char_traitsISX_EEEEEUlwE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNSC_12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISV_EEEEEUlwE_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNS0_6detail12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISV_EEEEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
350
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
350
        else if constexpr (std::is_object_v<T>) {
688
350
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
350
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEwEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS0_6detail12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsIST_EEEEEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
486
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
486
        else if constexpr (std::is_object_v<T>) {
688
486
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
486
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_until_classic_spaceINSt3__117basic_string_viewIwNS6_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS6_9add_constIT_E4typeEEEEESD_EUlDiE_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Line
Count
Source
683
634
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
634
        else if constexpr (std::is_object_v<T>) {
688
634
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
634
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RT0_NSC_10locale_refEEUlRNS1_12float_readerIcEEDpOT_E_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESI_lRKNS0_6detail9fill_typeEbEUlcE_EEDaNS3_7storageE
Line
Count
Source
683
664
    {
684
664
        if constexpr (std::is_const_v<T>) {
685
664
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
664
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS6_INS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
3.01k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
3.01k
        else if constexpr (std::is_object_v<T>) {
688
3.01k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
3.01k
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Line
Count
Source
683
13.0k
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
13.0k
        else if constexpr (std::is_object_v<T>) {
688
13.0k
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
13.0k
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS0_6detail10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
_ZN3scn2v34impl12fnref_detail4base3getIKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESI_lRKNS0_6detail9fill_typeEbEUlwE_EEDaNS3_7storageE
Line
Count
Source
683
280
    {
684
280
        if constexpr (std::is_const_v<T>) {
685
280
            return static_cast<T*>(s.m_cp);
686
        }
687
        else if constexpr (std::is_object_v<T>) {
688
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
280
    }
_ZN3scn2v34impl12fnref_detail4base3getIZNS1_24read_while_classic_spaceINS1_15take_width_viewINS6_INS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_EEDaNS3_7storageE
Line
Count
Source
683
970
    {
684
        if constexpr (std::is_const_v<T>) {
685
            return static_cast<T*>(s.m_cp);
686
        }
687
970
        else if constexpr (std::is_object_v<T>) {
688
970
            return static_cast<T*>(s.m_p);
689
        }
690
        else {
691
            return reinterpret_cast<T*>(s.m_fp);
692
        }
693
970
    }
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
Unexecuted instantiation: _ZN3scn2v34impl12fnref_detail4base3getIZNS1_21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RT0_NSC_10locale_refEEUlRNS1_12float_readerIwEEDpOT_E_EEDaNS3_7storageE
694
};
695
}  // namespace fnref_detail
696
697
template <typename Sig,
698
          typename = typename fnref_detail::qual_fn_sig<Sig>::function>
699
class function_ref;
700
701
template <typename Sig, typename R, typename... Args>
702
class function_ref<Sig, R(Args...)> : fnref_detail::base {
703
    using signature = fnref_detail::qual_fn_sig<Sig>;
704
705
    template <typename T>
706
    using cv = typename signature::template cv<T>;
707
    template <typename T>
708
    using cvref = cv<T>&;
709
    static constexpr bool noex = signature::is_noexcept;
710
711
    template <typename... T>
712
    static constexpr bool is_invocable_using =
713
        signature::template is_invocable_using<T...>;
714
715
    using fwd_t = R(storage, fnref_detail::param_t<Args>...) noexcept(noex);
716
717
public:
718
    template <typename F,
719
              std::enable_if_t<std::is_function_v<F> &&
720
                               is_invocable_using<F>>* = nullptr>
721
    /*implicit*/ function_ref(F* f) noexcept
722
        : m_fptr([](storage fn,
723
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
724
              if constexpr (std::is_void_v<R>) {
725
                  get<F>(fn)(static_cast<decltype(args)>(args)...);
726
              }
727
              else {
728
                  return get<F>(fn)(static_cast<decltype(args)>(args)...);
729
              }
730
          }),
731
          m_storage(f)
732
    {
733
        SCN_EXPECT(f != nullptr);
734
    }
735
736
    template <typename F,
737
              typename T = std::remove_reference_t<F>,
738
              std::enable_if_t<detail::is_not_self<F, function_ref> &&
739
                               !std::is_member_pointer_v<T> &&
740
                               is_invocable_using<cvref<T>>>* = nullptr>
741
    /*implicit*/ constexpr function_ref(F&& f) noexcept
742
337k
        : m_fptr([](storage fn,
743
1.37M
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
1.37M
              cvref<T> obj = *get<T>(fn);
745
1.37M
              if constexpr (std::is_void_v<R>) {
746
60.0k
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
1.31M
              else {
749
1.31M
                  return obj(static_cast<decltype(args)>(args)...);
750
1.31M
              }
751
1.37M
          }),
_ZZN3scn2v34impl12function_refIFbcES3_EC1INSt3__110__not_fn_tIS4_EES8_TnPNS6_9enable_ifIXaaaasr6detailE11is_not_selfIT_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSB_EEvE4typeELPv0EEEOSA_ENKUlNS1_12fnref_detail4base7storageEcE_clESK_c
Line
Count
Source
743
8.15k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
8.15k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
8.15k
              else {
749
8.15k
                  return obj(static_cast<decltype(args)>(args)...);
750
8.15k
              }
751
8.15k
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESM_lRKNSC_9fill_typeEbEUlcE_SV_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES17_c
_ZZN3scn2v34impl12function_refIFbDiES3_EC1INSt3__110__not_fn_tIS4_EES8_TnPNS6_9enable_ifIXaaaasr6detailE11is_not_selfIT_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSB_EEvE4typeELPv0EEEOSA_ENKUlNS1_12fnref_detail4base7storageEDiE_clESK_Di
Line
Count
Source
743
505k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
505k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
505k
              else {
749
505k
                  return obj(static_cast<decltype(args)>(args)...);
750
505k
              }
751
505k
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_EUlDiE_SR_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEDiE_clES12_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEDiE_clES11_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_lRKNSB_9fill_typeEbEUlcE_ST_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSK_ENKUlNS1_12fnref_detail4base7storageEcE_clES15_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEENS1_15take_width_viewINSA_ISG_SH_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_iEUlcE_SY_TnPNSQ_9enable_ifIXaaaasr6detailE11is_not_selfISS_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS10_EEvE4typeELPv0EEEOSS_ENKUlNS1_12fnref_detail4base7storageEcE_clES19_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_iEUlcE_SQ_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSK_ENKUlNS1_12fnref_detail4base7storageEcE_clES11_c
_ZZN3scn2v34impl12function_refIFvDiES3_EC1IZNS1_20calculate_text_widthIcEEmNSt3__117basic_string_viewIT_NS7_11char_traitsIS9_EEEEEUlDiE_SD_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfIS9_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSF_EEvE4typeELPv0EEEOS9_ENKUlNS1_12fnref_detail4base7storageEDiE_clESO_Di
Line
Count
Source
743
52.7k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
52.7k
              cvref<T> obj = *get<T>(fn);
745
52.7k
              if constexpr (std::is_void_v<R>) {
746
52.7k
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
              else {
749
                  return obj(static_cast<decltype(args)>(args)...);
750
              }
751
52.7k
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IRKZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEENS0_13scan_expectedINS8_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlcE_SR_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESH_EUlDiE_SM_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSO_EEvE4typeELPv0EEEOSH_ENKUlNS1_12fnref_detail4base7storageEDiE_clESX_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_ENKUlNS1_12fnref_detail4base7storageEDiE_clESW_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IRKZNS1_9skip_fillINSt3__117basic_string_viewIcNS7_11char_traitsIcEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbEUlcE_SP_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISF_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSF_ENKUlNS1_12fnref_detail4base7storageEcE_clES11_c
_ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSE_EENS1_15take_width_viewINSA_ISE_SE_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_iEUlcE_SV_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageEcE_clES16_c
Line
Count
Source
743
796
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
796
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
796
              else {
749
796
                  return obj(static_cast<decltype(args)>(args)...);
750
796
              }
751
796
          }),
_ZZN3scn2v34impl12function_refIFbcES3_EC1IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlcE_SR_TnPNSF_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Line
Count
Source
743
2.77k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
2.77k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
2.77k
              else {
749
2.77k
                  return obj(static_cast<decltype(args)>(args)...);
750
2.77k
              }
751
2.77k
          }),
_ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_ENKUlNS1_12fnref_detail4base7storageEDiE_clESY_Di
Line
Count
Source
743
1.38k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
1.38k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
1.38k
              else {
749
1.38k
                  return obj(static_cast<decltype(args)>(args)...);
750
1.38k
              }
751
1.38k
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_EUlcE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEST_NSR_17basic_string_viewIcNSR_11char_traitsIcEEEEEUlcE_S12_TnPNSR_9enable_ifIXaaaasr6detailE11is_not_selfIST_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS14_EEvE4typeELPv0EEEOST_ENKUlNS1_12fnref_detail4base7storageEcE_clES1D_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_EUlcE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEEUlcE_SU_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEcE_clES15_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlcE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEcE_clES18_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEcE_clES18_c
_ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEcE_clES18_c
Line
Count
Source
743
4
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
4
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
4
              else {
749
4
                  return obj(static_cast<decltype(args)>(args)...);
750
4
              }
751
4
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESQ_NSO_17basic_string_viewIcNSO_11char_traitsIcEEEEEUlcE_SZ_TnPNSO_9enable_ifIXaaaasr6detailE11is_not_selfISQ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS11_EEvE4typeELPv0EEEOSQ_ENKUlNS1_12fnref_detail4base7storageEcE_clES1A_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEcE_clES18_c
_ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEcE_clES18_c
Line
Count
Source
743
264
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
264
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
264
              else {
749
264
                  return obj(static_cast<decltype(args)>(args)...);
750
264
              }
751
264
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlcE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES10_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES10_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES10_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEEEUlcE_SR_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSI_ENKUlNS1_12fnref_detail4base7storageEcE_clES12_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES10_c
_ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES10_c
Line
Count
Source
743
26
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
26
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
26
              else {
749
26
                  return obj(static_cast<decltype(args)>(args)...);
750
26
              }
751
26
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
_ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Line
Count
Source
743
8
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
8
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
8
              else {
749
8
                  return obj(static_cast<decltype(args)>(args)...);
750
8
              }
751
8
          }),
_ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Line
Count
Source
743
260
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
260
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
260
              else {
749
260
                  return obj(static_cast<decltype(args)>(args)...);
750
260
              }
751
260
          }),
_ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Line
Count
Source
743
10
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
10
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
10
              else {
749
10
                  return obj(static_cast<decltype(args)>(args)...);
750
10
              }
751
10
          }),
_ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Line
Count
Source
743
278
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
278
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
278
              else {
749
278
                  return obj(static_cast<decltype(args)>(args)...);
750
278
              }
751
278
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEDiE_clES11_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlcE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEcE_clES1F_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlDiE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEDiE_clES18_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlcE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEcE_clES18_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clESZ_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlcE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES1D_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlDiE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEDiE_clES16_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlcE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES16_c
_ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_ENKUlNS1_12fnref_detail4base7storageEDiE_clESY_Di
Line
Count
Source
743
7.66k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
7.66k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
7.66k
              else {
749
7.66k
                  return obj(static_cast<decltype(args)>(args)...);
750
7.66k
              }
751
7.66k
          }),
_ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlcE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEcE_clES1D_c
Line
Count
Source
743
782
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
782
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
782
              else {
749
782
                  return obj(static_cast<decltype(args)>(args)...);
750
782
              }
751
782
          }),
_ZZN3scn2v34impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlDiE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEDiE_clES15_Di
Line
Count
Source
743
15.1k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
15.1k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
15.1k
              else {
749
15.1k
                  return obj(static_cast<decltype(args)>(args)...);
750
15.1k
              }
751
15.1k
          }),
_ZZN3scn2v34impl12function_refIFbcES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlcE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEcE_clES15_c
Line
Count
Source
743
5.95k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
5.95k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
5.95k
              else {
749
5.95k
                  return obj(static_cast<decltype(args)>(args)...);
750
5.95k
              }
751
5.95k
          }),
_ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlcE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Line
Count
Source
743
442
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
442
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
442
              else {
749
442
                  return obj(static_cast<decltype(args)>(args)...);
750
442
              }
751
442
          }),
_ZZN3scn2v34impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlDiE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clES13_Di
Line
Count
Source
743
370k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
370k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
370k
              else {
749
370k
                  return obj(static_cast<decltype(args)>(args)...);
750
370k
              }
751
370k
          }),
_ZZN3scn2v34impl12function_refIFbcES3_EC1IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlcE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES13_c
Line
Count
Source
743
3.48k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
3.48k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
3.48k
              else {
749
3.48k
                  return obj(static_cast<decltype(args)>(args)...);
750
3.48k
              }
751
3.48k
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlcE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEcE_clES1F_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlcE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES1D_c
_ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlcE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEcE_clES1D_c
Line
Count
Source
743
782
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
782
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
782
              else {
749
782
                  return obj(static_cast<decltype(args)>(args)...);
750
782
              }
751
782
          }),
_ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlcE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Line
Count
Source
743
442
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
442
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
442
              else {
749
442
                  return obj(static_cast<decltype(args)>(args)...);
750
442
              }
751
442
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlcE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEcE_clES1D_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlcE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
_ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlcE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Line
Count
Source
743
782
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
782
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
782
              else {
749
782
                  return obj(static_cast<decltype(args)>(args)...);
750
782
              }
751
782
          }),
_ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlcE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES19_c
Line
Count
Source
743
442
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
442
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
442
              else {
749
442
                  return obj(static_cast<decltype(args)>(args)...);
750
442
              }
751
442
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlcE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEcE_clES1D_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlcE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlcE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEcE_clES1B_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbcES3_EC1IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlcE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES19_c
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clESZ_Di
_ZZN3scn2v34impl12function_refIFbwES3_EC1INSt3__110__not_fn_tIS4_EES8_TnPNS6_9enable_ifIXaaaasr6detailE11is_not_selfIT_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSB_EEvE4typeELPv0EEEOSA_ENKUlNS1_12fnref_detail4base7storageEwE_clESK_w
Line
Count
Source
743
2.91k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
2.91k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
2.91k
              else {
749
2.91k
                  return obj(static_cast<decltype(args)>(args)...);
750
2.91k
              }
751
2.91k
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESM_lRKNSC_9fill_typeEbEUlwE_SV_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES17_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_EUlDiE_SR_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEDiE_clES12_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEDiE_clES11_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_lRKNSB_9fill_typeEbEUlwE_ST_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSK_ENKUlNS1_12fnref_detail4base7storageEwE_clES15_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEENS1_15take_width_viewINSA_ISG_SH_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_iEUlwE_SY_TnPNSQ_9enable_ifIXaaaasr6detailE11is_not_selfISS_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS10_EEvE4typeELPv0EEEOSS_ENKUlNS1_12fnref_detail4base7storageEwE_clES19_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_iEUlwE_SQ_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSK_ENKUlNS1_12fnref_detail4base7storageEwE_clES11_w
_ZZN3scn2v34impl12function_refIFvDiES3_EC1IZNS1_20calculate_text_widthIwEEmNSt3__117basic_string_viewIT_NS7_11char_traitsIS9_EEEEEUlDiE_SD_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfIS9_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSF_EEvE4typeELPv0EEEOS9_ENKUlNS1_12fnref_detail4base7storageEDiE_clESO_Di
Line
Count
Source
743
7.34k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
7.34k
              cvref<T> obj = *get<T>(fn);
745
7.34k
              if constexpr (std::is_void_v<R>) {
746
7.34k
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
              else {
749
                  return obj(static_cast<decltype(args)>(args)...);
750
              }
751
7.34k
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IRKZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEENS0_13scan_expectedINS8_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlwE_SR_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESH_EUlDiE_SM_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSO_EEvE4typeELPv0EEEOSH_ENKUlNS1_12fnref_detail4base7storageEDiE_clESX_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_ENKUlNS1_12fnref_detail4base7storageEDiE_clESW_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IRKZNS1_9skip_fillINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbEUlwE_SP_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISF_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSF_ENKUlNS1_12fnref_detail4base7storageEwE_clES11_w
_ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESE_EUlDiE_SJ_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISE_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSL_EEvE4typeELPv0EEEOSE_ENKUlNS1_12fnref_detail4base7storageEDiE_clESU_Di
Line
Count
Source
743
3.38k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
3.38k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
3.38k
              else {
749
3.38k
                  return obj(static_cast<decltype(args)>(args)...);
750
3.38k
              }
751
3.38k
          }),
_ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSE_EENS1_15take_width_viewINSA_ISE_SE_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_iEUlwE_SV_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageEwE_clES16_w
Line
Count
Source
743
422
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
422
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
422
              else {
749
422
                  return obj(static_cast<decltype(args)>(args)...);
750
422
              }
751
422
          }),
_ZZN3scn2v34impl12function_refIFbwES3_EC1IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlwE_SR_TnPNSF_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Line
Count
Source
743
928
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
928
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
928
              else {
749
928
                  return obj(static_cast<decltype(args)>(args)...);
750
928
              }
751
928
          }),
_ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_ENKUlNS1_12fnref_detail4base7storageEDiE_clESY_Di
Line
Count
Source
743
248
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
248
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
248
              else {
749
248
                  return obj(static_cast<decltype(args)>(args)...);
750
248
              }
751
248
          }),
_ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNSE_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_ENKUlNS1_12fnref_detail4base7storageEDiE_clESW_Di
Line
Count
Source
743
113k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
113k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
113k
              else {
749
113k
                  return obj(static_cast<decltype(args)>(args)...);
750
113k
              }
751
113k
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_EUlwE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEST_NSR_17basic_string_viewIcNSR_11char_traitsIcEEEEEUlwE_S12_TnPNSR_9enable_ifIXaaaasr6detailE11is_not_selfIST_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS14_EEvE4typeELPv0EEEOST_ENKUlNS1_12fnref_detail4base7storageEwE_clES1D_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_EUlwE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEEUlwE_SU_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEwE_clES15_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlwE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEwE_clES18_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEwE_clES18_w
_ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEwE_clES18_w
Line
Count
Source
743
6
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
6
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
6
              else {
749
6
                  return obj(static_cast<decltype(args)>(args)...);
750
6
              }
751
6
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESQ_NSO_17basic_string_viewIcNSO_11char_traitsIcEEEEEUlwE_SZ_TnPNSO_9enable_ifIXaaaasr6detailE11is_not_selfISQ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS11_EEvE4typeELPv0EEEOSQ_ENKUlNS1_12fnref_detail4base7storageEwE_clES1A_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEwE_clES18_w
_ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageEwE_clES18_w
Line
Count
Source
743
136
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
136
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
136
              else {
749
136
                  return obj(static_cast<decltype(args)>(args)...);
750
136
              }
751
136
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlwE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES10_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES10_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES10_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEEEUlwE_SR_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSI_ENKUlNS1_12fnref_detail4base7storageEwE_clES12_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES10_w
_ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES10_w
Line
Count
Source
743
6
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
6
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
6
              else {
749
6
                  return obj(static_cast<decltype(args)>(args)...);
750
6
              }
751
6
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
_ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Line
Count
Source
743
8
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
8
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
8
              else {
749
8
                  return obj(static_cast<decltype(args)>(args)...);
750
8
              }
751
8
          }),
_ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Line
Count
Source
743
134
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
134
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
134
              else {
749
134
                  return obj(static_cast<decltype(args)>(args)...);
750
134
              }
751
134
          }),
_ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Line
Count
Source
743
8
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
8
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
8
              else {
749
8
                  return obj(static_cast<decltype(args)>(args)...);
750
8
              }
751
8
          }),
_ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Line
Count
Source
743
338
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
338
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
338
              else {
749
338
                  return obj(static_cast<decltype(args)>(args)...);
750
338
              }
751
338
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_ENKUlNS1_12fnref_detail4base7storageESG_SM_SN_E_clES1J_SG_SM_SN_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1E_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_ENKUlNS1_12fnref_detail4base7storageESC_SJ_SL_E_clES1H_SC_SJ_SL_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES1C_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEDiE_clES11_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlwE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEwE_clES1F_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlDiE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEDiE_clES18_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlwE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEwE_clES18_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clESZ_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlwE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES1D_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlDiE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEDiE_clES16_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlwE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES16_w
_ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_ENKUlNS1_12fnref_detail4base7storageEDiE_clESY_Di
Line
Count
Source
743
10.2k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
10.2k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
10.2k
              else {
749
10.2k
                  return obj(static_cast<decltype(args)>(args)...);
750
10.2k
              }
751
10.2k
          }),
_ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlwE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEwE_clES1D_w
Line
Count
Source
743
350
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
350
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
350
              else {
749
350
                  return obj(static_cast<decltype(args)>(args)...);
750
350
              }
751
350
          }),
_ZZN3scn2v34impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlDiE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEDiE_clES15_Di
Line
Count
Source
743
678
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
678
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
678
              else {
749
678
                  return obj(static_cast<decltype(args)>(args)...);
750
678
              }
751
678
          }),
_ZZN3scn2v34impl12function_refIFbwES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlwE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEwE_clES15_w
Line
Count
Source
743
168
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
168
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
168
              else {
749
168
                  return obj(static_cast<decltype(args)>(args)...);
750
168
              }
751
168
          }),
_ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNSE_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_ENKUlNS1_12fnref_detail4base7storageEDiE_clESW_Di
Line
Count
Source
743
228k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
228k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
228k
              else {
749
228k
                  return obj(static_cast<decltype(args)>(args)...);
750
228k
              }
751
228k
          }),
_ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlwE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Line
Count
Source
743
486
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
486
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
486
              else {
749
486
                  return obj(static_cast<decltype(args)>(args)...);
750
486
              }
751
486
          }),
_ZZN3scn2v34impl12function_refIFbDiES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlDiE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clES13_Di
Line
Count
Source
743
4.29k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
4.29k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
4.29k
              else {
749
4.29k
                  return obj(static_cast<decltype(args)>(args)...);
750
4.29k
              }
751
4.29k
          }),
_ZZN3scn2v34impl12function_refIFbwES3_EC1IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlwE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES13_w
Line
Count
Source
743
1.27k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
1.27k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
1.27k
              else {
749
1.27k
                  return obj(static_cast<decltype(args)>(args)...);
750
1.27k
              }
751
1.27k
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlwE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEwE_clES1F_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlwE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES1D_w
_ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlwE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEwE_clES1D_w
Line
Count
Source
743
350
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
350
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
350
              else {
749
350
                  return obj(static_cast<decltype(args)>(args)...);
750
350
              }
751
350
          }),
_ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlwE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Line
Count
Source
743
486
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
486
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
486
              else {
749
486
                  return obj(static_cast<decltype(args)>(args)...);
750
486
              }
751
486
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlwE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEwE_clES1D_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlwE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlwE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlwE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES19_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlwE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_ENKUlNS1_12fnref_detail4base7storageEwE_clES1D_w
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlwE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
_ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlwE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_ENKUlNS1_12fnref_detail4base7storageEwE_clES1B_w
Line
Count
Source
743
350
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
350
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
350
              else {
749
350
                  return obj(static_cast<decltype(args)>(args)...);
750
350
              }
751
350
          }),
_ZZN3scn2v34impl12function_refIFbwES3_EC1IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlwE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES19_w
Line
Count
Source
743
486
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
486
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
486
              else {
749
486
                  return obj(static_cast<decltype(args)>(args)...);
750
486
              }
751
486
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clESZ_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_until_classic_spaceINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESE_EUlDiE_SJ_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISE_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSL_EEvE4typeELPv0EEEOSE_ENKUlNS1_12fnref_detail4base7storageEDiE_clESU_Di
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE12read_defaultISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES19_S9_SE_SG_
_ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE12read_defaultISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES19_S9_SE_SG_
Line
Count
Source
743
634
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
634
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
634
              else {
749
634
                  return obj(static_cast<decltype(args)>(args)...);
750
634
              }
751
634
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIcE12read_defaultISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES19_S9_SE_SG_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE12read_defaultISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1B_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE12read_defaultISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1B_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIcE12read_defaultISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1B_SB_SH_SI_
_ZZN3scn2v34impl12function_refIFbcES3_EC1IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNS0_6detail9fill_typeEbEUlcE_ST_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEcE_clES15_c
Line
Count
Source
743
664
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
664
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
664
              else {
749
664
                  return obj(static_cast<decltype(args)>(args)...);
750
664
              }
751
664
          }),
_ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clESZ_Di
Line
Count
Source
743
3.01k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
3.01k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
3.01k
              else {
749
3.01k
                  return obj(static_cast<decltype(args)>(args)...);
750
3.01k
              }
751
3.01k
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE12read_defaultISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES19_S9_SE_SG_
_ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE12read_defaultISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES19_S9_SE_SG_
Line
Count
Source
743
13.0k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
13.0k
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
13.0k
              else {
749
13.0k
                  return obj(static_cast<decltype(args)>(args)...);
750
13.0k
              }
751
13.0k
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC1IZNS1_21reader_impl_for_floatIwE12read_defaultISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_ENKUlNS1_12fnref_detail4base7storageES9_SE_SG_E_clES19_S9_SE_SG_
_ZZN3scn2v34impl12function_refIFbwES3_EC1IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNS0_6detail9fill_typeEbEUlwE_ST_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEwE_clES15_w
Line
Count
Source
743
280
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
280
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
280
              else {
749
280
                  return obj(static_cast<decltype(args)>(args)...);
750
280
              }
751
280
          }),
_ZZN3scn2v34impl12function_refIFbDiES3_EC1IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_ENKUlNS1_12fnref_detail4base7storageEDiE_clESZ_Di
Line
Count
Source
743
970
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
970
              cvref<T> obj = *get<T>(fn);
745
              if constexpr (std::is_void_v<R>) {
746
                  obj(static_cast<decltype(args)>(args)...);
747
              }
748
970
              else {
749
970
                  return obj(static_cast<decltype(args)>(args)...);
750
970
              }
751
970
          }),
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE12read_defaultISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1B_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE12read_defaultISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1B_SB_SH_SI_
Unexecuted instantiation: _ZZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC1IZNS1_21reader_impl_for_floatIwE12read_defaultISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_ENKUlNS1_12fnref_detail4base7storageESB_SH_SI_E_clES1B_SB_SH_SI_
752
337k
          m_storage(std::addressof(f))
753
337k
    {
754
337k
    }
_ZN3scn2v34impl12function_refIFbcES3_EC2INSt3__110__not_fn_tIS4_EES8_TnPNS6_9enable_ifIXaaaasr6detailE11is_not_selfIT_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSB_EEvE4typeELPv0EEEOSA_
Line
Count
Source
742
4.23k
        : m_fptr([](storage fn,
743
4.23k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
4.23k
              cvref<T> obj = *get<T>(fn);
745
4.23k
              if constexpr (std::is_void_v<R>) {
746
4.23k
                  obj(static_cast<decltype(args)>(args)...);
747
4.23k
              }
748
4.23k
              else {
749
4.23k
                  return obj(static_cast<decltype(args)>(args)...);
750
4.23k
              }
751
4.23k
          }),
752
4.23k
          m_storage(std::addressof(f))
753
4.23k
    {
754
4.23k
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESM_lRKNSC_9fill_typeEbEUlcE_SV_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSM_
_ZN3scn2v34impl12function_refIFbDiES3_EC2INSt3__110__not_fn_tIS4_EES8_TnPNS6_9enable_ifIXaaaasr6detailE11is_not_selfIT_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSB_EEvE4typeELPv0EEEOSA_
Line
Count
Source
742
119k
        : m_fptr([](storage fn,
743
119k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
119k
              cvref<T> obj = *get<T>(fn);
745
119k
              if constexpr (std::is_void_v<R>) {
746
119k
                  obj(static_cast<decltype(args)>(args)...);
747
119k
              }
748
119k
              else {
749
119k
                  return obj(static_cast<decltype(args)>(args)...);
750
119k
              }
751
119k
          }),
752
119k
          m_storage(std::addressof(f))
753
119k
    {
754
119k
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_EUlDiE_SR_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_lRKNSB_9fill_typeEbEUlcE_ST_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSK_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEENS1_15take_width_viewINSA_ISG_SH_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_iEUlcE_SY_TnPNSQ_9enable_ifIXaaaasr6detailE11is_not_selfISS_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS10_EEvE4typeELPv0EEEOSS_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_iEUlcE_SQ_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSK_
_ZN3scn2v34impl12function_refIFvDiES3_EC2IZNS1_20calculate_text_widthIcEEmNSt3__117basic_string_viewIT_NS7_11char_traitsIS9_EEEEEUlDiE_SD_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfIS9_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSF_EEvE4typeELPv0EEEOS9_
Line
Count
Source
742
25.3k
        : m_fptr([](storage fn,
743
25.3k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
25.3k
              cvref<T> obj = *get<T>(fn);
745
25.3k
              if constexpr (std::is_void_v<R>) {
746
25.3k
                  obj(static_cast<decltype(args)>(args)...);
747
25.3k
              }
748
25.3k
              else {
749
25.3k
                  return obj(static_cast<decltype(args)>(args)...);
750
25.3k
              }
751
25.3k
          }),
752
25.3k
          m_storage(std::addressof(f))
753
25.3k
    {
754
25.3k
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IRKZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEENS0_13scan_expectedINS8_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlcE_SR_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESH_EUlDiE_SM_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSO_EEvE4typeELPv0EEEOSH_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IRKZNS1_9skip_fillINSt3__117basic_string_viewIcNS7_11char_traitsIcEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbEUlcE_SP_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISF_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSF_
_ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSE_EENS1_15take_width_viewINSA_ISE_SE_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_iEUlcE_SV_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
796
        : m_fptr([](storage fn,
743
796
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
796
              cvref<T> obj = *get<T>(fn);
745
796
              if constexpr (std::is_void_v<R>) {
746
796
                  obj(static_cast<decltype(args)>(args)...);
747
796
              }
748
796
              else {
749
796
                  return obj(static_cast<decltype(args)>(args)...);
750
796
              }
751
796
          }),
752
796
          m_storage(std::addressof(f))
753
796
    {
754
796
    }
_ZN3scn2v34impl12function_refIFbcES3_EC2IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlcE_SR_TnPNSF_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_
Line
Count
Source
742
2.35k
        : m_fptr([](storage fn,
743
2.35k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
2.35k
              cvref<T> obj = *get<T>(fn);
745
2.35k
              if constexpr (std::is_void_v<R>) {
746
2.35k
                  obj(static_cast<decltype(args)>(args)...);
747
2.35k
              }
748
2.35k
              else {
749
2.35k
                  return obj(static_cast<decltype(args)>(args)...);
750
2.35k
              }
751
2.35k
          }),
752
2.35k
          m_storage(std::addressof(f))
753
2.35k
    {
754
2.35k
    }
_ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_
Line
Count
Source
742
480
        : m_fptr([](storage fn,
743
480
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
480
              cvref<T> obj = *get<T>(fn);
745
480
              if constexpr (std::is_void_v<R>) {
746
480
                  obj(static_cast<decltype(args)>(args)...);
747
480
              }
748
480
              else {
749
480
                  return obj(static_cast<decltype(args)>(args)...);
750
480
              }
751
480
          }),
752
480
          m_storage(std::addressof(f))
753
480
    {
754
480
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_EUlcE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEST_NSR_17basic_string_viewIcNSR_11char_traitsIcEEEEEUlcE_S12_TnPNSR_9enable_ifIXaaaasr6detailE11is_not_selfIST_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS14_EEvE4typeELPv0EEEOST_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlcE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_EUlcE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEEUlcE_SU_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlcE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlcE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
_ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
Line
Count
Source
742
4
        : m_fptr([](storage fn,
743
4
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
4
              cvref<T> obj = *get<T>(fn);
745
4
              if constexpr (std::is_void_v<R>) {
746
4
                  obj(static_cast<decltype(args)>(args)...);
747
4
              }
748
4
              else {
749
4
                  return obj(static_cast<decltype(args)>(args)...);
750
4
              }
751
4
          }),
752
4
          m_storage(std::addressof(f))
753
4
    {
754
4
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESQ_NSO_17basic_string_viewIcNSO_11char_traitsIcEEEEEUlcE_SZ_TnPNSO_9enable_ifIXaaaasr6detailE11is_not_selfISQ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS11_EEvE4typeELPv0EEEOSQ_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
_ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlcE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
Line
Count
Source
742
264
        : m_fptr([](storage fn,
743
264
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
264
              cvref<T> obj = *get<T>(fn);
745
264
              if constexpr (std::is_void_v<R>) {
746
264
                  obj(static_cast<decltype(args)>(args)...);
747
264
              }
748
264
              else {
749
264
                  return obj(static_cast<decltype(args)>(args)...);
750
264
              }
751
264
          }),
752
264
          m_storage(std::addressof(f))
753
264
    {
754
264
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlcE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEEEUlcE_SR_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSI_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
_ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlcE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
26
        : m_fptr([](storage fn,
743
26
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
26
              cvref<T> obj = *get<T>(fn);
745
26
              if constexpr (std::is_void_v<R>) {
746
26
                  obj(static_cast<decltype(args)>(args)...);
747
26
              }
748
26
              else {
749
26
                  return obj(static_cast<decltype(args)>(args)...);
750
26
              }
751
26
          }),
752
26
          m_storage(std::addressof(f))
753
26
    {
754
26
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
_ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Line
Count
Source
742
8
        : m_fptr([](storage fn,
743
8
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
8
              cvref<T> obj = *get<T>(fn);
745
8
              if constexpr (std::is_void_v<R>) {
746
8
                  obj(static_cast<decltype(args)>(args)...);
747
8
              }
748
8
              else {
749
8
                  return obj(static_cast<decltype(args)>(args)...);
750
8
              }
751
8
          }),
752
8
          m_storage(std::addressof(f))
753
8
    {
754
8
    }
_ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Line
Count
Source
742
260
        : m_fptr([](storage fn,
743
260
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
260
              cvref<T> obj = *get<T>(fn);
745
260
              if constexpr (std::is_void_v<R>) {
746
260
                  obj(static_cast<decltype(args)>(args)...);
747
260
              }
748
260
              else {
749
260
                  return obj(static_cast<decltype(args)>(args)...);
750
260
              }
751
260
          }),
752
260
          m_storage(std::addressof(f))
753
260
    {
754
260
    }
_ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
10
        : m_fptr([](storage fn,
743
10
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
10
              cvref<T> obj = *get<T>(fn);
745
10
              if constexpr (std::is_void_v<R>) {
746
10
                  obj(static_cast<decltype(args)>(args)...);
747
10
              }
748
10
              else {
749
10
                  return obj(static_cast<decltype(args)>(args)...);
750
10
              }
751
10
          }),
752
10
          m_storage(std::addressof(f))
753
10
    {
754
10
    }
_ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
278
        : m_fptr([](storage fn,
743
278
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
278
              cvref<T> obj = *get<T>(fn);
745
278
              if constexpr (std::is_void_v<R>) {
746
278
                  obj(static_cast<decltype(args)>(args)...);
747
278
              }
748
278
              else {
749
278
                  return obj(static_cast<decltype(args)>(args)...);
750
278
              }
751
278
          }),
752
278
          m_storage(std::addressof(f))
753
278
    {
754
278
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIcEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcS7_EEEERNS1_12float_readerIcEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlcE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlDiE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlcE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlcE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlDiE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlcE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_
_ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_
Line
Count
Source
742
732
        : m_fptr([](storage fn,
743
732
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
732
              cvref<T> obj = *get<T>(fn);
745
732
              if constexpr (std::is_void_v<R>) {
746
732
                  obj(static_cast<decltype(args)>(args)...);
747
732
              }
748
732
              else {
749
732
                  return obj(static_cast<decltype(args)>(args)...);
750
732
              }
751
732
          }),
752
732
          m_storage(std::addressof(f))
753
732
    {
754
732
    }
_ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlcE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
34
        : m_fptr([](storage fn,
743
34
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
34
              cvref<T> obj = *get<T>(fn);
745
34
              if constexpr (std::is_void_v<R>) {
746
34
                  obj(static_cast<decltype(args)>(args)...);
747
34
              }
748
34
              else {
749
34
                  return obj(static_cast<decltype(args)>(args)...);
750
34
              }
751
34
          }),
752
34
          m_storage(std::addressof(f))
753
34
    {
754
34
    }
_ZN3scn2v34impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlDiE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
360
        : m_fptr([](storage fn,
743
360
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
360
              cvref<T> obj = *get<T>(fn);
745
360
              if constexpr (std::is_void_v<R>) {
746
360
                  obj(static_cast<decltype(args)>(args)...);
747
360
              }
748
360
              else {
749
360
                  return obj(static_cast<decltype(args)>(args)...);
750
360
              }
751
360
          }),
752
360
          m_storage(std::addressof(f))
753
360
    {
754
360
    }
_ZN3scn2v34impl12function_refIFbcES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlcE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
306
        : m_fptr([](storage fn,
743
306
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
306
              cvref<T> obj = *get<T>(fn);
745
306
              if constexpr (std::is_void_v<R>) {
746
306
                  obj(static_cast<decltype(args)>(args)...);
747
306
              }
748
306
              else {
749
306
                  return obj(static_cast<decltype(args)>(args)...);
750
306
              }
751
306
          }),
752
306
          m_storage(std::addressof(f))
753
306
    {
754
306
    }
_ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlcE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
30
        : m_fptr([](storage fn,
743
30
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
30
              cvref<T> obj = *get<T>(fn);
745
30
              if constexpr (std::is_void_v<R>) {
746
30
                  obj(static_cast<decltype(args)>(args)...);
747
30
              }
748
30
              else {
749
30
                  return obj(static_cast<decltype(args)>(args)...);
750
30
              }
751
30
          }),
752
30
          m_storage(std::addressof(f))
753
30
    {
754
30
    }
_ZN3scn2v34impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlDiE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
2.71k
        : m_fptr([](storage fn,
743
2.71k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
2.71k
              cvref<T> obj = *get<T>(fn);
745
2.71k
              if constexpr (std::is_void_v<R>) {
746
2.71k
                  obj(static_cast<decltype(args)>(args)...);
747
2.71k
              }
748
2.71k
              else {
749
2.71k
                  return obj(static_cast<decltype(args)>(args)...);
750
2.71k
              }
751
2.71k
          }),
752
2.71k
          m_storage(std::addressof(f))
753
2.71k
    {
754
2.71k
    }
_ZN3scn2v34impl12function_refIFbcES3_EC2IRKZNKS1_25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlcE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
276
        : m_fptr([](storage fn,
743
276
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
276
              cvref<T> obj = *get<T>(fn);
745
276
              if constexpr (std::is_void_v<R>) {
746
276
                  obj(static_cast<decltype(args)>(args)...);
747
276
              }
748
276
              else {
749
276
                  return obj(static_cast<decltype(args)>(args)...);
750
276
              }
751
276
          }),
752
276
          m_storage(std::addressof(f))
753
276
    {
754
276
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlcE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlcE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
_ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlcE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
34
        : m_fptr([](storage fn,
743
34
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
34
              cvref<T> obj = *get<T>(fn);
745
34
              if constexpr (std::is_void_v<R>) {
746
34
                  obj(static_cast<decltype(args)>(args)...);
747
34
              }
748
34
              else {
749
34
                  return obj(static_cast<decltype(args)>(args)...);
750
34
              }
751
34
          }),
752
34
          m_storage(std::addressof(f))
753
34
    {
754
34
    }
_ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlcE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
30
        : m_fptr([](storage fn,
743
30
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
30
              cvref<T> obj = *get<T>(fn);
745
30
              if constexpr (std::is_void_v<R>) {
746
30
                  obj(static_cast<decltype(args)>(args)...);
747
30
              }
748
30
              else {
749
30
                  return obj(static_cast<decltype(args)>(args)...);
750
30
              }
751
30
          }),
752
30
          m_storage(std::addressof(f))
753
30
    {
754
30
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlcE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlcE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
_ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlcE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
34
        : m_fptr([](storage fn,
743
34
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
34
              cvref<T> obj = *get<T>(fn);
745
34
              if constexpr (std::is_void_v<R>) {
746
34
                  obj(static_cast<decltype(args)>(args)...);
747
34
              }
748
34
              else {
749
34
                  return obj(static_cast<decltype(args)>(args)...);
750
34
              }
751
34
          }),
752
34
          m_storage(std::addressof(f))
753
34
    {
754
34
    }
_ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlcE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
30
        : m_fptr([](storage fn,
743
30
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
30
              cvref<T> obj = *get<T>(fn);
745
30
              if constexpr (std::is_void_v<R>) {
746
30
                  obj(static_cast<decltype(args)>(args)...);
747
30
              }
748
30
              else {
749
30
                  return obj(static_cast<decltype(args)>(args)...);
750
30
              }
751
30
          }),
752
30
          m_storage(std::addressof(f))
753
30
    {
754
30
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlcE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlcE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlcE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbcES3_EC2IZNS1_23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlcE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_
_ZN3scn2v34impl12function_refIFbwES3_EC2INSt3__110__not_fn_tIS4_EES8_TnPNS6_9enable_ifIXaaaasr6detailE11is_not_selfIT_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSB_EEvE4typeELPv0EEEOSA_
Line
Count
Source
742
1.37k
        : m_fptr([](storage fn,
743
1.37k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
1.37k
              cvref<T> obj = *get<T>(fn);
745
1.37k
              if constexpr (std::is_void_v<R>) {
746
1.37k
                  obj(static_cast<decltype(args)>(args)...);
747
1.37k
              }
748
1.37k
              else {
749
1.37k
                  return obj(static_cast<decltype(args)>(args)...);
750
1.37k
              }
751
1.37k
          }),
752
1.37k
          m_storage(std::addressof(f))
753
1.37k
    {
754
1.37k
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESM_lRKNSC_9fill_typeEbEUlwE_SV_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_EUlDiE_SR_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_lRKNSB_9fill_typeEbEUlwE_ST_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSK_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEENS1_15take_width_viewINSA_ISG_SH_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_iEUlwE_SY_TnPNSQ_9enable_ifIXaaaasr6detailE11is_not_selfISS_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS10_EEvE4typeELPv0EEEOSS_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_iEUlwE_SQ_TnPNSI_9enable_ifIXaaaasr6detailE11is_not_selfISK_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSK_
_ZN3scn2v34impl12function_refIFvDiES3_EC2IZNS1_20calculate_text_widthIwEEmNSt3__117basic_string_viewIT_NS7_11char_traitsIS9_EEEEEUlDiE_SD_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfIS9_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSF_EEvE4typeELPv0EEEOS9_
Line
Count
Source
742
4.17k
        : m_fptr([](storage fn,
743
4.17k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
4.17k
              cvref<T> obj = *get<T>(fn);
745
4.17k
              if constexpr (std::is_void_v<R>) {
746
4.17k
                  obj(static_cast<decltype(args)>(args)...);
747
4.17k
              }
748
4.17k
              else {
749
4.17k
                  return obj(static_cast<decltype(args)>(args)...);
750
4.17k
              }
751
4.17k
          }),
752
4.17k
          m_storage(std::addressof(f))
753
4.17k
    {
754
4.17k
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IRKZNS1_9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEENS0_13scan_expectedINS8_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlwE_SR_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESH_EUlDiE_SM_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSO_EEvE4typeELPv0EEEOSH_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS8_9add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNS8_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IRKZNS1_9skip_fillINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbEUlwE_SP_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISF_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSF_
_ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESE_EUlDiE_SJ_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISE_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSL_EEvE4typeELPv0EEEOSE_
Line
Count
Source
742
2.57k
        : m_fptr([](storage fn,
743
2.57k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
2.57k
              cvref<T> obj = *get<T>(fn);
745
2.57k
              if constexpr (std::is_void_v<R>) {
746
2.57k
                  obj(static_cast<decltype(args)>(args)...);
747
2.57k
              }
748
2.57k
              else {
749
2.57k
                  return obj(static_cast<decltype(args)>(args)...);
750
2.57k
              }
751
2.57k
          }),
752
2.57k
          m_storage(std::addressof(f))
753
2.57k
    {
754
2.57k
    }
_ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSE_EENS1_15take_width_viewINSA_ISE_SE_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_iEUlwE_SV_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
422
        : m_fptr([](storage fn,
743
422
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
422
              cvref<T> obj = *get<T>(fn);
745
422
              if constexpr (std::is_void_v<R>) {
746
422
                  obj(static_cast<decltype(args)>(args)...);
747
422
              }
748
422
              else {
749
422
                  return obj(static_cast<decltype(args)>(args)...);
750
422
              }
751
422
          }),
752
422
          m_storage(std::addressof(f))
753
422
    {
754
422
    }
_ZN3scn2v34impl12function_refIFbwES3_EC2IRKZNS1_9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_lRKNS0_6detail9fill_typeEbEUlwE_SR_TnPNSF_9enable_ifIXaaaasr6detailE11is_not_selfISH_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSH_
Line
Count
Source
742
486
        : m_fptr([](storage fn,
743
486
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
486
              cvref<T> obj = *get<T>(fn);
745
486
              if constexpr (std::is_void_v<R>) {
746
486
                  obj(static_cast<decltype(args)>(args)...);
747
486
              }
748
486
              else {
749
486
                  return obj(static_cast<decltype(args)>(args)...);
750
486
              }
751
486
          }),
752
486
          m_storage(std::addressof(f))
753
486
    {
754
486
    }
_ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_
Line
Count
Source
742
200
        : m_fptr([](storage fn,
743
200
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
200
              cvref<T> obj = *get<T>(fn);
745
200
              if constexpr (std::is_void_v<R>) {
746
200
                  obj(static_cast<decltype(args)>(args)...);
747
200
              }
748
200
              else {
749
200
                  return obj(static_cast<decltype(args)>(args)...);
750
200
              }
751
200
          }),
752
200
          m_storage(std::addressof(f))
753
200
    {
754
200
    }
_ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNSE_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_
Line
Count
Source
742
110k
        : m_fptr([](storage fn,
743
110k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
110k
              cvref<T> obj = *get<T>(fn);
745
110k
              if constexpr (std::is_void_v<R>) {
746
110k
                  obj(static_cast<decltype(args)>(args)...);
747
110k
              }
748
110k
              else {
749
110k
                  return obj(static_cast<decltype(args)>(args)...);
750
110k
              }
751
110k
          }),
752
110k
          m_storage(std::addressof(f))
753
110k
    {
754
110k
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_EUlwE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEST_NSR_17basic_string_viewIcNSR_11char_traitsIcEEEEEUlwE_S12_TnPNSR_9enable_ifIXaaaasr6detailE11is_not_selfIST_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS14_EEvE4typeELPv0EEEOST_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS1_15take_width_viewINSC_ISI_SJ_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_bEUlwE0_S10_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS12_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISM_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_EUlwE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEEUlwE_SU_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_bEUlwE0_SS_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlwE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
_ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
Line
Count
Source
742
6
        : m_fptr([](storage fn,
743
6
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
6
              cvref<T> obj = *get<T>(fn);
745
6
              if constexpr (std::is_void_v<R>) {
746
6
                  obj(static_cast<decltype(args)>(args)...);
747
6
              }
748
6
              else {
749
6
                  return obj(static_cast<decltype(args)>(args)...);
750
6
              }
751
6
          }),
752
6
          m_storage(std::addressof(f))
753
6
    {
754
6
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESQ_NSO_17basic_string_viewIcNSO_11char_traitsIcEEEEEUlwE_SZ_TnPNSO_9enable_ifIXaaaasr6detailE11is_not_selfISQ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRS11_EEvE4typeELPv0EEEOSQ_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
_ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSG_EENS1_15take_width_viewINSC_ISG_SG_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_bEUlwE0_SX_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSR_
Line
Count
Source
742
136
        : m_fptr([](storage fn,
743
136
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
136
              cvref<T> obj = *get<T>(fn);
745
136
              if constexpr (std::is_void_v<R>) {
746
136
                  obj(static_cast<decltype(args)>(args)...);
747
136
              }
748
136
              else {
749
136
                  return obj(static_cast<decltype(args)>(args)...);
750
136
              }
751
136
          }),
752
136
          m_storage(std::addressof(f))
753
136
    {
754
136
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISJ_fEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlwE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEEDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEEEUlwE_SR_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRST_EEvE4typeELPv0EEEOSI_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
_ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS1_14parse_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_bEUlwE0_SP_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSR_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
6
        : m_fptr([](storage fn,
743
6
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
6
              cvref<T> obj = *get<T>(fn);
745
6
              if constexpr (std::is_void_v<R>) {
746
6
                  obj(static_cast<decltype(args)>(args)...);
747
6
              }
748
6
              else {
749
6
                  return obj(static_cast<decltype(args)>(args)...);
750
6
              }
751
6
          }),
752
6
          m_storage(std::addressof(f))
753
6
    {
754
6
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISM_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
_ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Line
Count
Source
742
8
        : m_fptr([](storage fn,
743
8
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
8
              cvref<T> obj = *get<T>(fn);
745
8
              if constexpr (std::is_void_v<R>) {
746
8
                  obj(static_cast<decltype(args)>(args)...);
747
8
              }
748
8
              else {
749
8
                  return obj(static_cast<decltype(args)>(args)...);
750
8
              }
751
8
          }),
752
8
          m_storage(std::addressof(f))
753
8
    {
754
8
    }
_ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISJ_dEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Line
Count
Source
742
134
        : m_fptr([](storage fn,
743
134
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
134
              cvref<T> obj = *get<T>(fn);
745
134
              if constexpr (std::is_void_v<R>) {
746
134
                  obj(static_cast<decltype(args)>(args)...);
747
134
              }
748
134
              else {
749
134
                  return obj(static_cast<decltype(args)>(args)...);
750
134
              }
751
134
          }),
752
134
          m_storage(std::addressof(f))
753
134
    {
754
134
    }
_ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
8
        : m_fptr([](storage fn,
743
8
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
8
              cvref<T> obj = *get<T>(fn);
745
8
              if constexpr (std::is_void_v<R>) {
746
8
                  obj(static_cast<decltype(args)>(args)...);
747
8
              }
748
8
              else {
749
8
                  return obj(static_cast<decltype(args)>(args)...);
750
8
              }
751
8
          }),
752
8
          m_storage(std::addressof(f))
753
8
    {
754
8
    }
_ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
338
        : m_fptr([](storage fn,
743
338
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
338
              cvref<T> obj = *get<T>(fn);
745
338
              if constexpr (std::is_void_v<R>) {
746
338
                  obj(static_cast<decltype(args)>(args)...);
747
338
              }
748
338
              else {
749
338
                  return obj(static_cast<decltype(args)>(args)...);
750
338
              }
751
338
          }),
752
338
          m_storage(std::addressof(f))
753
338
    {
754
338
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS0_6ranges18default_sentinel_tEEEEERNS1_12float_readerIwEENS1_15take_width_viewINSA_6detail9subrange_8subrangeIS9_SB_EEEENS6_10locale_refEESO_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISM_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESW_RKNS6_12format_specsERT0_SN_EUlSG_DpOT_E0_S1A_TnPNSU_9enable_ifIXaaaasr6detailE11is_not_selfISW_SP_Entsr3stdE19is_member_pointer_vIS15_E18is_invocable_usingIS16_EEvE4typeELPv0EEEOSW_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RKNS4_12format_specsERT0_SI_EUlSB_DpOT_E0_S15_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vIS10_E18is_invocable_usingIS11_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwS7_EEEERNS1_12float_readerIwEENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS7_S7_EEEENS0_6detail10locale_refEESM_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISJ_eEENS3_IDTclL_ZNSE_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESU_RKNSK_12format_specsERT0_SL_EUlSC_DpOT_E0_S18_TnPNSS_9enable_ifIXaaaasr6detailE11is_not_selfISU_SN_Entsr3stdE19is_member_pointer_vIS13_E18is_invocable_usingIS14_EEvE4typeELPv0EEEOSU_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE10read_specsISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RKNSF_12format_specsERT0_SG_EUlS9_DpOT_E0_S13_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingISZ_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESL_EUlDiE_SQ_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSS_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlwE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlDiE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS7_12specs_helperEEUlwE_SW_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSZ_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlwE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlDiE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_NS7_12specs_helperEEUlwE_SU_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSX_EEvE4typeELPv0EEEOSM_
_ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_EUlDiE_SN_TnPNSG_9enable_ifIXaaaasr6detailE11is_not_selfISI_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSP_EEvE4typeELPv0EEEOSI_
Line
Count
Source
742
372
        : m_fptr([](storage fn,
743
372
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
372
              cvref<T> obj = *get<T>(fn);
745
372
              if constexpr (std::is_void_v<R>) {
746
372
                  obj(static_cast<decltype(args)>(args)...);
747
372
              }
748
372
              else {
749
372
                  return obj(static_cast<decltype(args)>(args)...);
750
372
              }
751
372
          }),
752
372
          m_storage(std::addressof(f))
753
372
    {
754
372
    }
_ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlwE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
20
        : m_fptr([](storage fn,
743
20
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
20
              cvref<T> obj = *get<T>(fn);
745
20
              if constexpr (std::is_void_v<R>) {
746
20
                  obj(static_cast<decltype(args)>(args)...);
747
20
              }
748
20
              else {
749
20
                  return obj(static_cast<decltype(args)>(args)...);
750
20
              }
751
20
          }),
752
20
          m_storage(std::addressof(f))
753
20
    {
754
20
    }
_ZN3scn2v34impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlDiE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
132
        : m_fptr([](storage fn,
743
132
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
132
              cvref<T> obj = *get<T>(fn);
745
132
              if constexpr (std::is_void_v<R>) {
746
132
                  obj(static_cast<decltype(args)>(args)...);
747
132
              }
748
132
              else {
749
132
                  return obj(static_cast<decltype(args)>(args)...);
750
132
              }
751
132
          }),
752
132
          m_storage(std::addressof(f))
753
132
    {
754
132
    }
_ZN3scn2v34impl12function_refIFbwES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS7_12specs_helperEEUlwE_ST_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
66
        : m_fptr([](storage fn,
743
66
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
66
              cvref<T> obj = *get<T>(fn);
745
66
              if constexpr (std::is_void_v<R>) {
746
66
                  obj(static_cast<decltype(args)>(args)...);
747
66
              }
748
66
              else {
749
66
                  return obj(static_cast<decltype(args)>(args)...);
750
66
              }
751
66
          }),
752
66
          m_storage(std::addressof(f))
753
66
    {
754
66
    }
_ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESG_EUlDiE_SL_TnPNSE_9enable_ifIXaaaasr6detailE11is_not_selfISG_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSN_EEvE4typeELPv0EEEOSG_
Line
Count
Source
742
40.2k
        : m_fptr([](storage fn,
743
40.2k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
40.2k
              cvref<T> obj = *get<T>(fn);
745
40.2k
              if constexpr (std::is_void_v<R>) {
746
40.2k
                  obj(static_cast<decltype(args)>(args)...);
747
40.2k
              }
748
40.2k
              else {
749
40.2k
                  return obj(static_cast<decltype(args)>(args)...);
750
40.2k
              }
751
40.2k
          }),
752
40.2k
          m_storage(std::addressof(f))
753
40.2k
    {
754
40.2k
    }
_ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlwE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
36
        : m_fptr([](storage fn,
743
36
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
36
              cvref<T> obj = *get<T>(fn);
745
36
              if constexpr (std::is_void_v<R>) {
746
36
                  obj(static_cast<decltype(args)>(args)...);
747
36
              }
748
36
              else {
749
36
                  return obj(static_cast<decltype(args)>(args)...);
750
36
              }
751
36
          }),
752
36
          m_storage(std::addressof(f))
753
36
    {
754
36
    }
_ZN3scn2v34impl12function_refIFbDiES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlDiE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
294
        : m_fptr([](storage fn,
743
294
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
294
              cvref<T> obj = *get<T>(fn);
745
294
              if constexpr (std::is_void_v<R>) {
746
294
                  obj(static_cast<decltype(args)>(args)...);
747
294
              }
748
294
              else {
749
294
                  return obj(static_cast<decltype(args)>(args)...);
750
294
              }
751
294
          }),
752
294
          m_storage(std::addressof(f))
753
294
    {
754
294
    }
_ZN3scn2v34impl12function_refIFbwES3_EC2IRKZNKS1_25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_NS7_12specs_helperEEUlwE_SR_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
96
        : m_fptr([](storage fn,
743
96
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
96
              cvref<T> obj = *get<T>(fn);
745
96
              if constexpr (std::is_void_v<R>) {
746
96
                  obj(static_cast<decltype(args)>(args)...);
747
96
              }
748
96
              else {
749
96
                  return obj(static_cast<decltype(args)>(args)...);
750
96
              }
751
96
          }),
752
96
          m_storage(std::addressof(f))
753
96
    {
754
96
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_12basic_stringIT0_NSM_11char_traitsISY_EENSM_9allocatorISY_EEEEEUlwE_S15_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_12basic_stringIT0_NSK_11char_traitsISW_EENSK_9allocatorISW_EEEEEUlwE_S13_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
_ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_12basic_stringIT0_NSJ_11char_traitsISW_EENSJ_9allocatorISW_EEEEEUlwE_S13_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
20
        : m_fptr([](storage fn,
743
20
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
20
              cvref<T> obj = *get<T>(fn);
745
20
              if constexpr (std::is_void_v<R>) {
746
20
                  obj(static_cast<decltype(args)>(args)...);
747
20
              }
748
20
              else {
749
20
                  return obj(static_cast<decltype(args)>(args)...);
750
20
              }
751
20
          }),
752
20
          m_storage(std::addressof(f))
753
20
    {
754
20
    }
_ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_12basic_stringIT0_NSH_11char_traitsISU_EENSH_9allocatorISU_EEEEEUlwE_S11_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
36
        : m_fptr([](storage fn,
743
36
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
36
              cvref<T> obj = *get<T>(fn);
745
36
              if constexpr (std::is_void_v<R>) {
746
36
                  obj(static_cast<decltype(args)>(args)...);
747
36
              }
748
36
              else {
749
36
                  return obj(static_cast<decltype(args)>(args)...);
750
36
              }
751
36
          }),
752
36
          m_storage(std::addressof(f))
753
36
    {
754
36
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlwE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlwE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEcEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlwE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlwE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENSA_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_RKNSE_12format_specsERNSM_17basic_string_viewIT0_NSM_11char_traitsISY_EEEEEUlwE_S13_TnPNSM_9enable_ifIXaaaasr6detailE11is_not_selfISO_S4_Entsr3stdE19is_member_pointer_vISY_E18is_invocable_usingIRSY_EEvE4typeELPv0EEEOSO_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_RKNSD_12format_specsERNSK_17basic_string_viewIT0_NSK_11char_traitsISW_EEEEEUlwE_S11_TnPNSK_9enable_ifIXaaaasr6detailE11is_not_selfISM_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSM_
_ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSF_EEEEwEENS0_13scan_expectedIDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERNSJ_17basic_string_viewIT0_NSJ_11char_traitsISW_EEEEEUlwE_S11_TnPNSJ_9enable_ifIXaaaasr6detailE11is_not_selfISL_S4_Entsr3stdE19is_member_pointer_vISW_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSL_
Line
Count
Source
742
20
        : m_fptr([](storage fn,
743
20
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
20
              cvref<T> obj = *get<T>(fn);
745
20
              if constexpr (std::is_void_v<R>) {
746
20
                  obj(static_cast<decltype(args)>(args)...);
747
20
              }
748
20
              else {
749
20
                  return obj(static_cast<decltype(args)>(args)...);
750
20
              }
751
20
          }),
752
20
          m_storage(std::addressof(f))
753
20
    {
754
20
    }
_ZN3scn2v34impl12function_refIFbwES3_EC2IZNS1_23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERNSH_17basic_string_viewIT0_NSH_11char_traitsISU_EEEEEUlwE_SZ_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vISU_E18is_invocable_usingIRSU_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
36
        : m_fptr([](storage fn,
743
36
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
36
              cvref<T> obj = *get<T>(fn);
745
36
              if constexpr (std::is_void_v<R>) {
746
36
                  obj(static_cast<decltype(args)>(args)...);
747
36
              }
748
36
              else {
749
36
                  return obj(static_cast<decltype(args)>(args)...);
750
36
              }
751
36
          }),
752
36
          m_storage(std::addressof(f))
753
36
    {
754
36
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEEDTclL_ZNS7_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_until_classic_spaceINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS7_9add_constIT_E4typeEEEEESE_EUlDiE_SJ_TnPNS7_9enable_ifIXaaaasr6detailE11is_not_selfISE_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSL_EEvE4typeELPv0EEEOSE_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE12read_defaultISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_
_ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE12read_defaultISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
634
        : m_fptr([](storage fn,
743
634
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
634
              cvref<T> obj = *get<T>(fn);
745
634
              if constexpr (std::is_void_v<R>) {
746
634
                  obj(static_cast<decltype(args)>(args)...);
747
634
              }
748
634
              else {
749
634
                  return obj(static_cast<decltype(args)>(args)...);
750
634
              }
751
634
          }),
752
634
          m_storage(std::addressof(f))
753
634
    {
754
634
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKcEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIcE12read_defaultISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE12read_defaultISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE12read_defaultISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIcE16forward_iteratorEEERNS1_12float_readerIcEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIcE12read_defaultISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_
_ZN3scn2v34impl12function_refIFbcES3_EC2IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNS0_6detail9fill_typeEbEUlcE_ST_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
482
        : m_fptr([](storage fn,
743
482
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
482
              cvref<T> obj = *get<T>(fn);
745
482
              if constexpr (std::is_void_v<R>) {
746
482
                  obj(static_cast<decltype(args)>(args)...);
747
482
              }
748
482
              else {
749
482
                  return obj(static_cast<decltype(args)>(args)...);
750
482
              }
751
482
          }),
752
482
          m_storage(std::addressof(f))
753
482
    {
754
482
    }
_ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
1.94k
        : m_fptr([](storage fn,
743
1.94k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
1.94k
              cvref<T> obj = *get<T>(fn);
745
1.94k
              if constexpr (std::is_void_v<R>) {
746
1.94k
                  obj(static_cast<decltype(args)>(args)...);
747
1.94k
              }
748
1.94k
              else {
749
1.94k
                  return obj(static_cast<decltype(args)>(args)...);
750
1.94k
              }
751
1.94k
          }),
752
1.94k
          m_storage(std::addressof(f))
753
1.94k
    {
754
1.94k
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE12read_defaultISE_fEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_
_ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE12read_defaultISE_dEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_
Line
Count
Source
742
13.0k
        : m_fptr([](storage fn,
743
13.0k
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
13.0k
              cvref<T> obj = *get<T>(fn);
745
13.0k
              if constexpr (std::is_void_v<R>) {
746
13.0k
                  obj(static_cast<decltype(args)>(args)...);
747
13.0k
              }
748
13.0k
              else {
749
13.0k
                  return obj(static_cast<decltype(args)>(args)...);
750
13.0k
              }
751
13.0k
          }),
752
13.0k
          m_storage(std::addressof(f))
753
13.0k
    {
754
13.0k
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedIPKwEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS5_S5_EENS0_6detail10locale_refEESH_EC2IZNS1_21reader_impl_for_floatIwE12read_defaultISE_eEENS3_IDTclL_ZNSA_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_RT0_SG_EUlS9_DpOT_E_S10_TnPNSN_9enable_ifIXaaaasr6detailE11is_not_selfISP_SI_Entsr3stdE19is_member_pointer_vISV_E18is_invocable_usingISW_EEvE4typeELPv0EEEOSP_
_ZN3scn2v34impl12function_refIFbwES3_EC2IRKZNS1_9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_lRKNS0_6detail9fill_typeEbEUlwE_ST_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSW_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
234
        : m_fptr([](storage fn,
743
234
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
234
              cvref<T> obj = *get<T>(fn);
745
234
              if constexpr (std::is_void_v<R>) {
746
234
                  obj(static_cast<decltype(args)>(args)...);
747
234
              }
748
234
              else {
749
234
                  return obj(static_cast<decltype(args)>(args)...);
750
234
              }
751
234
          }),
752
234
          m_storage(std::addressof(f))
753
234
    {
754
234
    }
_ZN3scn2v34impl12function_refIFbDiES3_EC2IZNS1_24read_while_classic_spaceINS1_15take_width_viewINS7_INS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEEEEDTclL_ZNS8_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESJ_EUlDiE_SO_TnPNSH_9enable_ifIXaaaasr6detailE11is_not_selfISJ_S4_Entsr3stdE19is_member_pointer_vIT0_E18is_invocable_usingIRSQ_EEvE4typeELPv0EEEOSJ_
Line
Count
Source
742
970
        : m_fptr([](storage fn,
743
970
                    fnref_detail::param_t<Args>... args) noexcept(noex) -> R {
744
970
              cvref<T> obj = *get<T>(fn);
745
970
              if constexpr (std::is_void_v<R>) {
746
970
                  obj(static_cast<decltype(args)>(args)...);
747
970
              }
748
970
              else {
749
970
                  return obj(static_cast<decltype(args)>(args)...);
750
970
              }
751
970
          }),
752
970
          m_storage(std::addressof(f))
753
970
    {
754
970
    }
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE12read_defaultISH_fEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE12read_defaultISH_dEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_
Unexecuted instantiation: _ZN3scn2v34impl12function_refIFNS0_13scan_expectedINS0_6detail17basic_scan_bufferIwE16forward_iteratorEEERNS1_12float_readerIwEENS0_6ranges6detail9subrange_8subrangeIS7_NSC_18default_sentinel_tEEENS4_10locale_refEESJ_EC2IZNS1_21reader_impl_for_floatIwE12read_defaultISH_eEENS3_IDTclL_ZNSC_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_RT0_SI_EUlSB_DpOT_E_S12_TnPNSP_9enable_ifIXaaaasr6detailE11is_not_selfISR_SK_Entsr3stdE19is_member_pointer_vISX_E18is_invocable_usingISY_EEvE4typeELPv0EEEOSR_
755
756
    template <typename T,
757
              std::enable_if_t<detail::is_not_self<T, function_ref> &&
758
                               !std::is_pointer_v<T>>* = nullptr>
759
    function_ref& operator=(T) = delete;
760
761
    constexpr R operator()(Args... args) const noexcept(noex)
762
1.37M
    {
763
1.37M
        return m_fptr(m_storage, SCN_FWD(args)...);
764
1.37M
    }
scn::v3::impl::function_ref<bool (char), bool (char)>::operator()(char) const
Line
Count
Source
762
25.7k
    {
763
25.7k
        return m_fptr(m_storage, SCN_FWD(args)...);
764
25.7k
    }
scn::v3::impl::function_ref<bool (char32_t), bool (char32_t)>::operator()(char32_t) const
Line
Count
Source
762
1.26M
    {
763
1.26M
        return m_fptr(m_storage, SCN_FWD(args)...);
764
1.26M
    }
scn::v3::impl::function_ref<void (char32_t), void (char32_t)>::operator()(char32_t) const
Line
Count
Source
762
60.0k
    {
763
60.0k
        return m_fptr(m_storage, SCN_FWD(args)...);
764
60.0k
    }
Unexecuted instantiation: scn::v3::impl::function_ref<scn::v3::scan_expected<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > (scn::v3::impl::float_reader<char>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, scn::v3::detail::locale_ref), scn::v3::scan_expected<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > (scn::v3::impl::float_reader<char>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, scn::v3::detail::locale_ref)>::operator()(scn::v3::impl::float_reader<char>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, scn::v3::detail::locale_ref) const
Unexecuted instantiation: scn::v3::impl::function_ref<scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> (scn::v3::impl::float_reader<char>&, scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::detail::locale_ref), scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> (scn::v3::impl::float_reader<char>&, scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::detail::locale_ref)>::operator()(scn::v3::impl::float_reader<char>&, scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::detail::locale_ref) const
scn::v3::impl::function_ref<scn::v3::scan_expected<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> > (scn::v3::impl::float_reader<char>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >, scn::v3::detail::locale_ref), scn::v3::scan_expected<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> > (scn::v3::impl::float_reader<char>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >, scn::v3::detail::locale_ref)>::operator()(scn::v3::impl::float_reader<char>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >, scn::v3::detail::locale_ref) const
Line
Count
Source
762
268
    {
763
268
        return m_fptr(m_storage, SCN_FWD(args)...);
764
268
    }
scn::v3::impl::function_ref<scn::v3::scan_expected<char const*> (scn::v3::impl::float_reader<char>&, scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>, scn::v3::detail::locale_ref), scn::v3::scan_expected<char const*> (scn::v3::impl::float_reader<char>&, scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>, scn::v3::detail::locale_ref)>::operator()(scn::v3::impl::float_reader<char>&, scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>, scn::v3::detail::locale_ref) const
Line
Count
Source
762
922
    {
763
922
        return m_fptr(m_storage, SCN_FWD(args)...);
764
922
    }
scn::v3::impl::function_ref<bool (wchar_t), bool (wchar_t)>::operator()(wchar_t) const
Line
Count
Source
762
8.64k
    {
763
8.64k
        return m_fptr(m_storage, SCN_FWD(args)...);
764
8.64k
    }
Unexecuted instantiation: scn::v3::impl::function_ref<scn::v3::scan_expected<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > (scn::v3::impl::float_reader<wchar_t>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, scn::v3::detail::locale_ref), scn::v3::scan_expected<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > (scn::v3::impl::float_reader<wchar_t>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, scn::v3::detail::locale_ref)>::operator()(scn::v3::impl::float_reader<wchar_t>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, scn::v3::detail::locale_ref) const
Unexecuted instantiation: scn::v3::impl::function_ref<scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> (scn::v3::impl::float_reader<wchar_t>&, scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::detail::locale_ref), scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> (scn::v3::impl::float_reader<wchar_t>&, scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::detail::locale_ref)>::operator()(scn::v3::impl::float_reader<wchar_t>&, scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::detail::locale_ref) const
scn::v3::impl::function_ref<scn::v3::scan_expected<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> > (scn::v3::impl::float_reader<wchar_t>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >, scn::v3::detail::locale_ref), scn::v3::scan_expected<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> > (scn::v3::impl::float_reader<wchar_t>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >, scn::v3::detail::locale_ref)>::operator()(scn::v3::impl::float_reader<wchar_t>&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >, scn::v3::detail::locale_ref) const
Line
Count
Source
762
142
    {
763
142
        return m_fptr(m_storage, SCN_FWD(args)...);
764
142
    }
scn::v3::impl::function_ref<scn::v3::scan_expected<wchar_t const*> (scn::v3::impl::float_reader<wchar_t>&, scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, scn::v3::detail::locale_ref), scn::v3::scan_expected<wchar_t const*> (scn::v3::impl::float_reader<wchar_t>&, scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, scn::v3::detail::locale_ref)>::operator()(scn::v3::impl::float_reader<wchar_t>&, scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, scn::v3::detail::locale_ref) const
Line
Count
Source
762
13.4k
    {
763
13.4k
        return m_fptr(m_storage, SCN_FWD(args)...);
764
13.4k
    }
765
766
private:
767
    fwd_t* m_fptr{nullptr};
768
    storage m_storage;
769
};
770
771
template <typename F, std::enable_if_t<std::is_function_v<F>>* = nullptr>
772
function_ref(F*) -> function_ref<F>;
773
}  // namespace impl
774
775
/////////////////////////////////////////////////////////////////
776
// Internal error types
777
/////////////////////////////////////////////////////////////////
778
779
namespace impl {
780
enum class eof_error { good, eof };
781
782
inline constexpr bool operator!(eof_error e)
783
386k
{
784
386k
    return e != eof_error::good;
785
386k
}
786
787
template <typename T>
788
struct eof_expected : public expected<T, eof_error> {
789
    using base = expected<T, eof_error>;
790
    using base::base;
791
792
    constexpr eof_expected(const base& other) : base(other) {}
793
    constexpr eof_expected(base&& other) : base(SCN_MOVE(other)) {}
794
};
795
796
inline constexpr auto make_eof_scan_error(eof_error err)
797
174
{
798
174
    SCN_EXPECT(err == eof_error::eof);
799
174
    return scan_error{scan_error::end_of_range, "EOF"};
800
174
}
801
802
struct SCN_TRIVIAL_ABI parse_error {
803
    enum code { good, eof, error };
804
    using code_t = code;
805
806
    constexpr parse_error() = default;
807
271k
    constexpr parse_error(code c) : m_code(c)
808
271k
    {
809
271k
        SCN_UNLIKELY_ATTR SCN_UNUSED(m_code);
810
271k
    }
811
812
    constexpr explicit operator bool() const
813
0
    {
814
0
        return m_code == good;
815
0
    }
816
    constexpr explicit operator code_t() const
817
0
    {
818
0
        return m_code;
819
0
    }
820
821
    friend constexpr bool operator==(parse_error a, parse_error b)
822
91.9k
    {
823
91.9k
        return a.m_code == b.m_code;
824
91.9k
    }
825
    friend constexpr bool operator!=(parse_error a, parse_error b)
826
0
    {
827
0
        return !(a == b);
828
0
    }
829
830
private:
831
    code m_code{good};
832
};
833
834
template <typename T>
835
struct parse_expected : public expected<T, parse_error> {
836
    using base = expected<T, parse_error>;
837
    using base::base;
838
839
    constexpr parse_expected(const base& other) : base(other) {}
840
    constexpr parse_expected(base&& other) : base(SCN_MOVE(other)) {}
841
};
842
843
inline constexpr parse_error make_eof_parse_error(eof_error err)
844
726
{
845
726
    SCN_EXPECT(err == eof_error::eof);
846
726
    return parse_error::eof;
847
726
}
848
849
inline constexpr scan_error make_scan_error_from_parse_error(
850
    parse_error err,
851
    enum scan_error::code code,
852
    const char* msg)
853
16.4k
{
854
16.4k
    if (err == parse_error::good) {
855
0
        return {};
856
0
    }
857
858
16.4k
    if (err == parse_error::eof) {
859
78
        return scan_error{scan_error::end_of_range, "EOF"};
860
78
    }
861
862
16.3k
    return scan_error{code, msg};
863
16.4k
}
864
865
inline constexpr auto map_parse_error_to_scan_error(enum scan_error::code code,
866
                                                    const char* msg)
867
16.4k
{
868
16.4k
    return [code, msg](parse_error err) {
869
16.4k
        return make_scan_error_from_parse_error(err, code, msg);
870
16.4k
    };
871
16.4k
}
872
}  // namespace impl
873
874
namespace detail {
875
template <typename T>
876
struct is_expected_impl<scn::impl::parse_expected<T>> : std::true_type {};
877
}  // namespace detail
878
879
/////////////////////////////////////////////////////////////////
880
// Range reading support
881
/////////////////////////////////////////////////////////////////
882
883
namespace impl {
884
#if SCN_MSVC_DEBUG_ITERATORS
885
#define SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND 1
886
#else
887
#define SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND 0
888
#endif
889
890
template <typename T>
891
constexpr bool range_supports_nocopy() noexcept
892
{
893
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
894
    return ranges::contiguous_range<T> ||
895
           (ranges::random_access_range<T> &&
896
            detail::can_make_address_from_iterator<ranges::iterator_t<T>>);
897
#else
898
    return ranges::contiguous_range<T>;
899
#endif
900
}
901
902
template <typename R>
903
constexpr auto range_nocopy_data(const R& r) noexcept
904
{
905
    static_assert(range_supports_nocopy<R>());
906
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
907
    return detail::to_address(ranges::begin(r));
908
#else
909
    return ranges::data(r);
910
#endif
911
}
912
913
template <typename R>
914
constexpr auto range_nocopy_size(const R& r) noexcept
915
{
916
    static_assert(range_supports_nocopy<R>());
917
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
918
    return static_cast<size_t>(ranges::distance(detail::to_address(r.begin()),
919
                                                detail::to_address(r.end())));
920
#else
921
    return r.size();
922
#endif
923
}
924
925
template <typename I, typename S>
926
SCN_NODISCARD constexpr bool is_range_eof(I begin, S end)
927
464M
{
928
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
929
    if constexpr (ranges::contiguous_iterator<I> ||
930
                  (ranges::random_access_iterator<I> &&
931
                   detail::can_make_address_from_iterator<I>)) {
932
        return detail::to_address(begin) == detail::to_address(end);
933
    }
934
    else
935
#endif
936
464M
    {
937
464M
        return begin == end;
938
464M
    }
939
464M
}
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true>)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>(scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true>)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>)
bool scn::v3::impl::is_range_eof<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>)
Line
Count
Source
927
29.0k
{
928
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
929
    if constexpr (ranges::contiguous_iterator<I> ||
930
                  (ranges::random_access_iterator<I> &&
931
                   detail::can_make_address_from_iterator<I>)) {
932
        return detail::to_address(begin) == detail::to_address(end);
933
    }
934
    else
935
#endif
936
29.0k
    {
937
29.0k
        return begin == end;
938
29.0k
    }
939
29.0k
}
bool scn::v3::impl::is_range_eof<char const*, char const*>(char const*, char const*)
Line
Count
Source
927
447k
{
928
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
929
    if constexpr (ranges::contiguous_iterator<I> ||
930
                  (ranges::random_access_iterator<I> &&
931
                   detail::can_make_address_from_iterator<I>)) {
932
        return detail::to_address(begin) == detail::to_address(end);
933
    }
934
    else
935
#endif
936
447k
    {
937
447k
        return begin == end;
938
447k
    }
939
447k
}
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true>)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>(scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true>)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>)
bool scn::v3::impl::is_range_eof<wchar_t const*, wchar_t const*>(wchar_t const*, wchar_t const*)
Line
Count
Source
927
464M
{
928
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
929
    if constexpr (ranges::contiguous_iterator<I> ||
930
                  (ranges::random_access_iterator<I> &&
931
                   detail::can_make_address_from_iterator<I>)) {
932
        return detail::to_address(begin) == detail::to_address(end);
933
    }
934
    else
935
#endif
936
464M
    {
937
464M
        return begin == end;
938
464M
    }
939
464M
}
bool scn::v3::impl::is_range_eof<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>)
Line
Count
Source
927
12.2k
{
928
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
929
    if constexpr (ranges::contiguous_iterator<I> ||
930
                  (ranges::random_access_iterator<I> &&
931
                   detail::can_make_address_from_iterator<I>)) {
932
        return detail::to_address(begin) == detail::to_address(end);
933
    }
934
    else
935
#endif
936
12.2k
    {
937
12.2k
        return begin == end;
938
12.2k
    }
939
12.2k
}
bool scn::v3::impl::is_range_eof<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true>)
Line
Count
Source
927
4.95k
{
928
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
929
    if constexpr (ranges::contiguous_iterator<I> ||
930
                  (ranges::random_access_iterator<I> &&
931
                   detail::can_make_address_from_iterator<I>)) {
932
        return detail::to_address(begin) == detail::to_address(end);
933
    }
934
    else
935
#endif
936
4.95k
    {
937
4.95k
        return begin == end;
938
4.95k
    }
939
4.95k
}
bool scn::v3::impl::is_range_eof<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true>)
Line
Count
Source
927
1.94k
{
928
#if SCN_NEED_MS_DEBUG_ITERATOR_WORKAROUND
929
    if constexpr (ranges::contiguous_iterator<I> ||
930
                  (ranges::random_access_iterator<I> &&
931
                   detail::can_make_address_from_iterator<I>)) {
932
        return detail::to_address(begin) == detail::to_address(end);
933
    }
934
    else
935
#endif
936
1.94k
    {
937
1.94k
        return begin == end;
938
1.94k
    }
939
1.94k
}
940
941
template <typename Range>
942
SCN_NODISCARD constexpr bool is_range_eof(Range r)
943
1.15M
{
944
1.15M
    return is_range_eof(r.begin(), r.end());
945
1.15M
}
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> >)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> >)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >)
bool scn::v3::impl::is_range_eof<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >)
Line
Count
Source
943
1.88k
{
944
1.88k
    return is_range_eof(r.begin(), r.end());
945
1.88k
}
bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >)
Line
Count
Source
943
27.1k
{
944
27.1k
    return is_range_eof(r.begin(), r.end());
945
27.1k
}
bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>)
Line
Count
Source
943
393k
{
944
393k
    return is_range_eof(r.begin(), r.end());
945
393k
}
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> >)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> >)
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >)
bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>)
Line
Count
Source
943
709k
{
944
709k
    return is_range_eof(r.begin(), r.end());
945
709k
}
bool scn::v3::impl::is_range_eof<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >)
Line
Count
Source
943
1.03k
{
944
1.03k
    return is_range_eof(r.begin(), r.end());
945
1.03k
}
bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >)
Line
Count
Source
943
11.2k
{
944
11.2k
    return is_range_eof(r.begin(), r.end());
945
11.2k
}
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >)
bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> >)
Line
Count
Source
943
4.95k
{
944
4.95k
    return is_range_eof(r.begin(), r.end());
945
4.95k
}
bool scn::v3::impl::is_range_eof<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> >)
Line
Count
Source
943
1.94k
{
944
1.94k
    return is_range_eof(r.begin(), r.end());
945
1.94k
}
Unexecuted instantiation: bool scn::v3::impl::is_range_eof<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)
946
947
template <typename Range>
948
SCN_NODISCARD constexpr eof_error eof_check(Range range)
949
386k
{
950
386k
    if (SCN_UNLIKELY(is_range_eof(range))) {
951
174
        return eof_error::eof;
952
174
    }
953
386k
    return eof_error::good;
954
386k
}
Unexecuted instantiation: scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> >)
Unexecuted instantiation: scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >)
Unexecuted instantiation: scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)
Unexecuted instantiation: scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>)
Unexecuted instantiation: scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> >)
Unexecuted instantiation: scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >)
scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >)
Line
Count
Source
949
1.88k
{
950
1.88k
    if (SCN_UNLIKELY(is_range_eof(range))) {
951
0
        return eof_error::eof;
952
0
    }
953
1.88k
    return eof_error::good;
954
1.88k
}
scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >)
Line
Count
Source
949
34
{
950
34
    if (SCN_UNLIKELY(is_range_eof(range))) {
951
0
        return eof_error::eof;
952
0
    }
953
34
    return eof_error::good;
954
34
}
scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>)
Line
Count
Source
949
21.6k
{
950
21.6k
    if (SCN_UNLIKELY(is_range_eof(range))) {
951
0
        return eof_error::eof;
952
0
    }
953
21.6k
    return eof_error::good;
954
21.6k
}
Unexecuted instantiation: scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> >)
Unexecuted instantiation: scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >)
Unexecuted instantiation: scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)
Unexecuted instantiation: scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>)
Unexecuted instantiation: scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> >)
Unexecuted instantiation: scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >)
scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>)
Line
Count
Source
949
359k
{
950
359k
    if (SCN_UNLIKELY(is_range_eof(range))) {
951
0
        return eof_error::eof;
952
0
    }
953
359k
    return eof_error::good;
954
359k
}
scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >)
Line
Count
Source
949
1.03k
{
950
1.03k
    if (SCN_UNLIKELY(is_range_eof(range))) {
951
0
        return eof_error::eof;
952
0
    }
953
1.03k
    return eof_error::good;
954
1.03k
}
scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >)
Line
Count
Source
949
38
{
950
38
    if (SCN_UNLIKELY(is_range_eof(range))) {
951
0
        return eof_error::eof;
952
0
    }
953
38
    return eof_error::good;
954
38
}
Unexecuted instantiation: scn::v3::impl::eof_error scn::v3::impl::eof_check<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >)
scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> >)
Line
Count
Source
949
1.94k
{
950
1.94k
    if (SCN_UNLIKELY(is_range_eof(range))) {
951
174
        return eof_error::eof;
952
174
    }
953
1.76k
    return eof_error::good;
954
1.94k
}
scn::v3::impl::eof_error scn::v3::impl::eof_check<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> >)
Line
Count
Source
949
970
{
950
970
    if (SCN_UNLIKELY(is_range_eof(range))) {
951
0
        return eof_error::eof;
952
0
    }
953
970
    return eof_error::good;
954
970
}
Unexecuted instantiation: scn::v3::impl::eof_error scn::v3::impl::eof_check<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)
955
956
template <typename Range>
957
bool is_entire_source_contiguous(Range r)
958
22.4k
{
959
    if constexpr (ranges::contiguous_range<Range> &&
960
21.5k
                  ranges::sized_range<Range>) {
961
21.5k
        return true;
962
    }
963
    else if constexpr (std::is_same_v<
964
                           ranges::const_iterator_t<Range>,
965
                           typename detail::basic_scan_buffer<
966
0
                               detail::char_t<Range>>::forward_iterator>) {
967
0
        auto beg = r.begin();
968
0
        if (!beg.stores_parent()) {
969
0
            return true;
970
0
        }
971
0
        return beg.parent()->is_contiguous();
972
    }
973
966
    else {
974
966
        return false;
975
966
    }
976
22.4k
}
Unexecuted instantiation: bool scn::v3::impl::is_entire_source_contiguous<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)
Unexecuted instantiation: bool scn::v3::impl::is_entire_source_contiguous<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>)
bool scn::v3::impl::is_entire_source_contiguous<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >)
Line
Count
Source
958
948
{
959
    if constexpr (ranges::contiguous_range<Range> &&
960
                  ranges::sized_range<Range>) {
961
        return true;
962
    }
963
    else if constexpr (std::is_same_v<
964
                           ranges::const_iterator_t<Range>,
965
                           typename detail::basic_scan_buffer<
966
                               detail::char_t<Range>>::forward_iterator>) {
967
        auto beg = r.begin();
968
        if (!beg.stores_parent()) {
969
            return true;
970
        }
971
        return beg.parent()->is_contiguous();
972
    }
973
948
    else {
974
948
        return false;
975
948
    }
976
948
}
bool scn::v3::impl::is_entire_source_contiguous<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>)
Line
Count
Source
958
14.2k
{
959
    if constexpr (ranges::contiguous_range<Range> &&
960
14.2k
                  ranges::sized_range<Range>) {
961
14.2k
        return true;
962
    }
963
    else if constexpr (std::is_same_v<
964
                           ranges::const_iterator_t<Range>,
965
                           typename detail::basic_scan_buffer<
966
                               detail::char_t<Range>>::forward_iterator>) {
967
        auto beg = r.begin();
968
        if (!beg.stores_parent()) {
969
            return true;
970
        }
971
        return beg.parent()->is_contiguous();
972
    }
973
    else {
974
        return false;
975
    }
976
14.2k
}
Unexecuted instantiation: bool scn::v3::impl::is_entire_source_contiguous<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)
Unexecuted instantiation: bool scn::v3::impl::is_entire_source_contiguous<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>)
bool scn::v3::impl::is_entire_source_contiguous<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >)
Line
Count
Source
958
18
{
959
    if constexpr (ranges::contiguous_range<Range> &&
960
                  ranges::sized_range<Range>) {
961
        return true;
962
    }
963
    else if constexpr (std::is_same_v<
964
                           ranges::const_iterator_t<Range>,
965
                           typename detail::basic_scan_buffer<
966
                               detail::char_t<Range>>::forward_iterator>) {
967
        auto beg = r.begin();
968
        if (!beg.stores_parent()) {
969
            return true;
970
        }
971
        return beg.parent()->is_contiguous();
972
    }
973
18
    else {
974
18
        return false;
975
18
    }
976
18
}
bool scn::v3::impl::is_entire_source_contiguous<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>)
Line
Count
Source
958
7.30k
{
959
    if constexpr (ranges::contiguous_range<Range> &&
960
7.30k
                  ranges::sized_range<Range>) {
961
7.30k
        return true;
962
    }
963
    else if constexpr (std::is_same_v<
964
                           ranges::const_iterator_t<Range>,
965
                           typename detail::basic_scan_buffer<
966
                               detail::char_t<Range>>::forward_iterator>) {
967
        auto beg = r.begin();
968
        if (!beg.stores_parent()) {
969
            return true;
970
        }
971
        return beg.parent()->is_contiguous();
972
    }
973
    else {
974
        return false;
975
    }
976
7.30k
}
977
978
template <typename Range>
979
bool is_segment_contiguous(Range r)
980
21.5k
{
981
    if constexpr (ranges::contiguous_range<Range> &&
982
21.5k
                  ranges::sized_range<Range>) {
983
21.5k
        return true;
984
    }
985
    else if constexpr (std::is_same_v<
986
                           ranges::const_iterator_t<Range>,
987
                           typename detail::basic_scan_buffer<
988
0
                               detail::char_t<Range>>::forward_iterator>) {
989
0
        auto beg = r.begin();
990
0
        if (beg.contiguous_segment().empty()) {
991
0
            return false;
992
0
        }
993
        if constexpr (ranges::common_range<Range>) {
994
            return beg.contiguous_segment().end() ==
995
                   ranges::end(r).contiguous_segment().end();
996
        }
997
0
        else {
998
0
            if (beg.stores_parent()) {
999
0
                return beg.contiguous_segment().end() ==
1000
0
                       beg.parent()->current_view().end();
1001
0
            }
1002
0
            return true;
1003
0
        }
1004
    }
1005
0
    else {
1006
0
        return false;
1007
0
    }
1008
21.5k
}
Unexecuted instantiation: bool scn::v3::impl::is_segment_contiguous<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>)
Unexecuted instantiation: bool scn::v3::impl::is_segment_contiguous<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)
Unexecuted instantiation: bool scn::v3::impl::is_segment_contiguous<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >)
bool scn::v3::impl::is_segment_contiguous<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>)
Line
Count
Source
980
14.2k
{
981
    if constexpr (ranges::contiguous_range<Range> &&
982
14.2k
                  ranges::sized_range<Range>) {
983
14.2k
        return true;
984
    }
985
    else if constexpr (std::is_same_v<
986
                           ranges::const_iterator_t<Range>,
987
                           typename detail::basic_scan_buffer<
988
                               detail::char_t<Range>>::forward_iterator>) {
989
        auto beg = r.begin();
990
        if (beg.contiguous_segment().empty()) {
991
            return false;
992
        }
993
        if constexpr (ranges::common_range<Range>) {
994
            return beg.contiguous_segment().end() ==
995
                   ranges::end(r).contiguous_segment().end();
996
        }
997
        else {
998
            if (beg.stores_parent()) {
999
                return beg.contiguous_segment().end() ==
1000
                       beg.parent()->current_view().end();
1001
            }
1002
            return true;
1003
        }
1004
    }
1005
    else {
1006
        return false;
1007
    }
1008
14.2k
}
Unexecuted instantiation: bool scn::v3::impl::is_segment_contiguous<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>)
Unexecuted instantiation: bool scn::v3::impl::is_segment_contiguous<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)
Unexecuted instantiation: bool scn::v3::impl::is_segment_contiguous<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >)
bool scn::v3::impl::is_segment_contiguous<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>)
Line
Count
Source
980
7.30k
{
981
    if constexpr (ranges::contiguous_range<Range> &&
982
7.30k
                  ranges::sized_range<Range>) {
983
7.30k
        return true;
984
    }
985
    else if constexpr (std::is_same_v<
986
                           ranges::const_iterator_t<Range>,
987
                           typename detail::basic_scan_buffer<
988
                               detail::char_t<Range>>::forward_iterator>) {
989
        auto beg = r.begin();
990
        if (beg.contiguous_segment().empty()) {
991
            return false;
992
        }
993
        if constexpr (ranges::common_range<Range>) {
994
            return beg.contiguous_segment().end() ==
995
                   ranges::end(r).contiguous_segment().end();
996
        }
997
        else {
998
            if (beg.stores_parent()) {
999
                return beg.contiguous_segment().end() ==
1000
                       beg.parent()->current_view().end();
1001
            }
1002
            return true;
1003
        }
1004
    }
1005
    else {
1006
        return false;
1007
    }
1008
7.30k
}
1009
1010
template <typename Range>
1011
std::size_t contiguous_beginning_size(Range r)
1012
{
1013
    if constexpr (ranges::contiguous_range<Range> &&
1014
                  ranges::sized_range<Range>) {
1015
        return r.size();
1016
    }
1017
    else if constexpr (std::is_same_v<
1018
                           ranges::const_iterator_t<Range>,
1019
                           typename detail::basic_scan_buffer<
1020
                               detail::char_t<Range>>::forward_iterator>) {
1021
        if constexpr (ranges::common_range<Range>) {
1022
            auto seg = r.begin().contiguous_segment();
1023
            auto dist =
1024
                static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1025
            return std::min(seg.size(), dist);
1026
        }
1027
        else {
1028
            return r.begin().contiguous_segment().size();
1029
        }
1030
    }
1031
    else {
1032
        return false;
1033
    }
1034
}
1035
1036
template <typename Range>
1037
auto get_contiguous_beginning(Range r)
1038
3.15k
{
1039
    if constexpr (ranges::contiguous_range<Range> &&
1040
                  ranges::sized_range<Range>) {
1041
        return r;
1042
    }
1043
    else if constexpr (std::is_same_v<
1044
                           ranges::const_iterator_t<Range>,
1045
                           typename detail::basic_scan_buffer<
1046
0
                               detail::char_t<Range>>::forward_iterator>) {
1047
        if constexpr (ranges::common_range<Range>) {
1048
            auto seg = r.begin().contiguous_segment();
1049
            auto dist =
1050
                static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1051
            return seg.substr(0, std::min(seg.size(), dist));
1052
        }
1053
0
        else {
1054
0
            return r.begin().contiguous_segment();
1055
0
        }
1056
    }
1057
3.15k
    else {
1058
3.15k
        return std::basic_string_view<detail::char_t<Range>>{};
1059
3.15k
    }
1060
3.15k
}
Unexecuted instantiation: auto scn::v3::impl::get_contiguous_beginning<scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > > >(scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >)
Unexecuted instantiation: auto scn::v3::impl::get_contiguous_beginning<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)
Unexecuted instantiation: auto scn::v3::impl::get_contiguous_beginning<scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > > >(scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >)
Unexecuted instantiation: auto scn::v3::impl::get_contiguous_beginning<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >)
auto scn::v3::impl::get_contiguous_beginning<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >)
Line
Count
Source
1038
1.21k
{
1039
    if constexpr (ranges::contiguous_range<Range> &&
1040
                  ranges::sized_range<Range>) {
1041
        return r;
1042
    }
1043
    else if constexpr (std::is_same_v<
1044
                           ranges::const_iterator_t<Range>,
1045
                           typename detail::basic_scan_buffer<
1046
                               detail::char_t<Range>>::forward_iterator>) {
1047
        if constexpr (ranges::common_range<Range>) {
1048
            auto seg = r.begin().contiguous_segment();
1049
            auto dist =
1050
                static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1051
            return seg.substr(0, std::min(seg.size(), dist));
1052
        }
1053
        else {
1054
            return r.begin().contiguous_segment();
1055
        }
1056
    }
1057
1.21k
    else {
1058
1.21k
        return std::basic_string_view<detail::char_t<Range>>{};
1059
1.21k
    }
1060
1.21k
}
Unexecuted instantiation: auto scn::v3::impl::get_contiguous_beginning<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>)
auto scn::v3::impl::get_contiguous_beginning<scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > > >(scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >)
Line
Count
Source
1038
1.94k
{
1039
    if constexpr (ranges::contiguous_range<Range> &&
1040
                  ranges::sized_range<Range>) {
1041
        return r;
1042
    }
1043
    else if constexpr (std::is_same_v<
1044
                           ranges::const_iterator_t<Range>,
1045
                           typename detail::basic_scan_buffer<
1046
                               detail::char_t<Range>>::forward_iterator>) {
1047
        if constexpr (ranges::common_range<Range>) {
1048
            auto seg = r.begin().contiguous_segment();
1049
            auto dist =
1050
                static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1051
            return seg.substr(0, std::min(seg.size(), dist));
1052
        }
1053
        else {
1054
            return r.begin().contiguous_segment();
1055
        }
1056
    }
1057
1.94k
    else {
1058
1.94k
        return std::basic_string_view<detail::char_t<Range>>{};
1059
1.94k
    }
1060
1.94k
}
1061
1062
template <typename Range>
1063
auto get_as_contiguous(Range r)
1064
21.5k
{
1065
21.5k
    SCN_EXPECT(is_segment_contiguous(r));
1066
1067
    if constexpr (ranges::contiguous_range<Range> &&
1068
21.5k
                  ranges::sized_range<Range>) {
1069
21.5k
        return r;
1070
    }
1071
    else if constexpr (std::is_same_v<
1072
                           ranges::const_iterator_t<Range>,
1073
                           typename detail::basic_scan_buffer<
1074
0
                               detail::char_t<Range>>::forward_iterator>) {
1075
        if constexpr (ranges::common_range<Range>) {
1076
            return detail::make_string_view_from_pointers(
1077
                r.begin().to_contiguous_segment_iterator(),
1078
                r.end().to_contiguous_segment_iterator());
1079
        }
1080
0
        else {
1081
0
            return r.begin().contiguous_segment();
1082
0
        }
1083
    }
1084
0
    else {
1085
0
        SCN_EXPECT(false);
1086
0
        SCN_UNREACHABLE;
1087
        // for return type deduction
1088
0
        return std::basic_string_view<detail::char_t<Range>>{};
1089
0
    }
1090
21.5k
}
Unexecuted instantiation: auto scn::v3::impl::get_as_contiguous<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>)
Unexecuted instantiation: auto scn::v3::impl::get_as_contiguous<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)
Unexecuted instantiation: auto scn::v3::impl::get_as_contiguous<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >)
auto scn::v3::impl::get_as_contiguous<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>)
Line
Count
Source
1064
14.2k
{
1065
14.2k
    SCN_EXPECT(is_segment_contiguous(r));
1066
1067
    if constexpr (ranges::contiguous_range<Range> &&
1068
14.2k
                  ranges::sized_range<Range>) {
1069
14.2k
        return r;
1070
    }
1071
    else if constexpr (std::is_same_v<
1072
                           ranges::const_iterator_t<Range>,
1073
                           typename detail::basic_scan_buffer<
1074
                               detail::char_t<Range>>::forward_iterator>) {
1075
        if constexpr (ranges::common_range<Range>) {
1076
            return detail::make_string_view_from_pointers(
1077
                r.begin().to_contiguous_segment_iterator(),
1078
                r.end().to_contiguous_segment_iterator());
1079
        }
1080
        else {
1081
            return r.begin().contiguous_segment();
1082
        }
1083
    }
1084
    else {
1085
        SCN_EXPECT(false);
1086
        SCN_UNREACHABLE;
1087
        // for return type deduction
1088
        return std::basic_string_view<detail::char_t<Range>>{};
1089
    }
1090
14.2k
}
Unexecuted instantiation: auto scn::v3::impl::get_as_contiguous<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>)
Unexecuted instantiation: auto scn::v3::impl::get_as_contiguous<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)
Unexecuted instantiation: auto scn::v3::impl::get_as_contiguous<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >)
auto scn::v3::impl::get_as_contiguous<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>)
Line
Count
Source
1064
7.30k
{
1065
7.30k
    SCN_EXPECT(is_segment_contiguous(r));
1066
1067
    if constexpr (ranges::contiguous_range<Range> &&
1068
7.30k
                  ranges::sized_range<Range>) {
1069
7.30k
        return r;
1070
    }
1071
    else if constexpr (std::is_same_v<
1072
                           ranges::const_iterator_t<Range>,
1073
                           typename detail::basic_scan_buffer<
1074
                               detail::char_t<Range>>::forward_iterator>) {
1075
        if constexpr (ranges::common_range<Range>) {
1076
            return detail::make_string_view_from_pointers(
1077
                r.begin().to_contiguous_segment_iterator(),
1078
                r.end().to_contiguous_segment_iterator());
1079
        }
1080
        else {
1081
            return r.begin().contiguous_segment();
1082
        }
1083
    }
1084
    else {
1085
        SCN_EXPECT(false);
1086
        SCN_UNREACHABLE;
1087
        // for return type deduction
1088
        return std::basic_string_view<detail::char_t<Range>>{};
1089
    }
1090
7.30k
}
1091
1092
template <typename Range>
1093
std::size_t guaranteed_minimum_size(Range r)
1094
5.57k
{
1095
    if constexpr (ranges::sized_range<Range>) {
1096
        return r.size();
1097
    }
1098
    else if constexpr (std::is_same_v<
1099
                           ranges::const_iterator_t<Range>,
1100
                           typename detail::basic_scan_buffer<
1101
0
                               detail::char_t<Range>>::forward_iterator>) {
1102
        if constexpr (ranges::common_range<Range>) {
1103
            return static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1104
        }
1105
0
        else {
1106
0
            if (r.begin().stores_parent()) {
1107
0
                return static_cast<size_t>(
1108
0
                    r.begin().parent()->chars_available() -
1109
0
                    r.begin().position());
1110
0
            }
1111
0
            return r.begin().contiguous_segment().size();
1112
0
        }
1113
    }
1114
5.57k
    else {
1115
5.57k
        return 0;
1116
5.57k
    }
1117
5.57k
}
Unexecuted instantiation: unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>)
Unexecuted instantiation: unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >)
Unexecuted instantiation: unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> >)
Unexecuted instantiation: unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >)
Unexecuted instantiation: unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> >)
unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >)
Line
Count
Source
1094
3.74k
{
1095
    if constexpr (ranges::sized_range<Range>) {
1096
        return r.size();
1097
    }
1098
    else if constexpr (std::is_same_v<
1099
                           ranges::const_iterator_t<Range>,
1100
                           typename detail::basic_scan_buffer<
1101
                               detail::char_t<Range>>::forward_iterator>) {
1102
        if constexpr (ranges::common_range<Range>) {
1103
            return static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1104
        }
1105
        else {
1106
            if (r.begin().stores_parent()) {
1107
                return static_cast<size_t>(
1108
                    r.begin().parent()->chars_available() -
1109
                    r.begin().position());
1110
            }
1111
            return r.begin().contiguous_segment().size();
1112
        }
1113
    }
1114
3.74k
    else {
1115
3.74k
        return 0;
1116
3.74k
    }
1117
3.74k
}
Unexecuted instantiation: unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>)
Unexecuted instantiation: unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >)
Unexecuted instantiation: unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> >)
Unexecuted instantiation: unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >)
Unexecuted instantiation: unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> >)
unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >)
Line
Count
Source
1094
638
{
1095
    if constexpr (ranges::sized_range<Range>) {
1096
        return r.size();
1097
    }
1098
    else if constexpr (std::is_same_v<
1099
                           ranges::const_iterator_t<Range>,
1100
                           typename detail::basic_scan_buffer<
1101
                               detail::char_t<Range>>::forward_iterator>) {
1102
        if constexpr (ranges::common_range<Range>) {
1103
            return static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1104
        }
1105
        else {
1106
            if (r.begin().stores_parent()) {
1107
                return static_cast<size_t>(
1108
                    r.begin().parent()->chars_available() -
1109
                    r.begin().position());
1110
            }
1111
            return r.begin().contiguous_segment().size();
1112
        }
1113
    }
1114
638
    else {
1115
638
        return 0;
1116
638
    }
1117
638
}
unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> >)
Line
Count
Source
1094
246
{
1095
    if constexpr (ranges::sized_range<Range>) {
1096
        return r.size();
1097
    }
1098
    else if constexpr (std::is_same_v<
1099
                           ranges::const_iterator_t<Range>,
1100
                           typename detail::basic_scan_buffer<
1101
                               detail::char_t<Range>>::forward_iterator>) {
1102
        if constexpr (ranges::common_range<Range>) {
1103
            return static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1104
        }
1105
        else {
1106
            if (r.begin().stores_parent()) {
1107
                return static_cast<size_t>(
1108
                    r.begin().parent()->chars_available() -
1109
                    r.begin().position());
1110
            }
1111
            return r.begin().contiguous_segment().size();
1112
        }
1113
    }
1114
246
    else {
1115
246
        return 0;
1116
246
    }
1117
246
}
unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >)
Line
Count
Source
1094
640
{
1095
    if constexpr (ranges::sized_range<Range>) {
1096
        return r.size();
1097
    }
1098
    else if constexpr (std::is_same_v<
1099
                           ranges::const_iterator_t<Range>,
1100
                           typename detail::basic_scan_buffer<
1101
                               detail::char_t<Range>>::forward_iterator>) {
1102
        if constexpr (ranges::common_range<Range>) {
1103
            return static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1104
        }
1105
        else {
1106
            if (r.begin().stores_parent()) {
1107
                return static_cast<size_t>(
1108
                    r.begin().parent()->chars_available() -
1109
                    r.begin().position());
1110
            }
1111
            return r.begin().contiguous_segment().size();
1112
        }
1113
    }
1114
640
    else {
1115
640
        return 0;
1116
640
    }
1117
640
}
Unexecuted instantiation: unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)
Unexecuted instantiation: unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> >)
unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >)
Line
Count
Source
1094
308
{
1095
    if constexpr (ranges::sized_range<Range>) {
1096
        return r.size();
1097
    }
1098
    else if constexpr (std::is_same_v<
1099
                           ranges::const_iterator_t<Range>,
1100
                           typename detail::basic_scan_buffer<
1101
                               detail::char_t<Range>>::forward_iterator>) {
1102
        if constexpr (ranges::common_range<Range>) {
1103
            return static_cast<size_t>(ranges::distance(r.begin(), r.end()));
1104
        }
1105
        else {
1106
            if (r.begin().stores_parent()) {
1107
                return static_cast<size_t>(
1108
                    r.begin().parent()->chars_available() -
1109
                    r.begin().position());
1110
            }
1111
            return r.begin().contiguous_segment().size();
1112
        }
1113
    }
1114
308
    else {
1115
308
        return 0;
1116
308
    }
1117
308
}
Unexecuted instantiation: unsigned long scn::v3::impl::guaranteed_minimum_size<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)
1118
1119
template <typename I, typename T>
1120
struct iterator_value_result {
1121
    SCN_NO_UNIQUE_ADDRESS I iterator;
1122
    SCN_NO_UNIQUE_ADDRESS T value;
1123
};
1124
1125
/////////////////////////////////////////////////////////////////
1126
// Unicode
1127
/////////////////////////////////////////////////////////////////
1128
1129
template <typename CharT>
1130
constexpr bool validate_unicode(std::basic_string_view<CharT> src)
1131
67.6k
{
1132
67.6k
    auto it = src.begin();
1133
912k
    while (it != src.end()) {
1134
848k
        const auto len = detail::code_point_length_by_starting_code_unit(*it);
1135
848k
        if (len == 0) {
1136
1.26k
            return false;
1137
1.26k
        }
1138
847k
        if (src.end() - it < len) {
1139
228
            return false;
1140
228
        }
1141
847k
        const auto cp = detail::decode_code_point_exhaustive(
1142
847k
            detail::make_string_view_from_iterators<CharT>(it, it + len));
1143
847k
        if (cp >= detail::invalid_code_point) {
1144
2.11k
            return false;
1145
2.11k
        }
1146
845k
        it += len;
1147
845k
    }
1148
64.0k
    return true;
1149
67.6k
}
bool scn::v3::impl::validate_unicode<char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Line
Count
Source
1131
10.9k
{
1132
10.9k
    auto it = src.begin();
1133
603k
    while (it != src.end()) {
1134
594k
        const auto len = detail::code_point_length_by_starting_code_unit(*it);
1135
594k
        if (len == 0) {
1136
1.26k
            return false;
1137
1.26k
        }
1138
593k
        if (src.end() - it < len) {
1139
228
            return false;
1140
228
        }
1141
593k
        const auto cp = detail::decode_code_point_exhaustive(
1142
593k
            detail::make_string_view_from_iterators<CharT>(it, it + len));
1143
593k
        if (cp >= detail::invalid_code_point) {
1144
426
            return false;
1145
426
        }
1146
592k
        it += len;
1147
592k
    }
1148
9.03k
    return true;
1149
10.9k
}
bool scn::v3::impl::validate_unicode<wchar_t>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)
Line
Count
Source
1131
56.7k
{
1132
56.7k
    auto it = src.begin();
1133
309k
    while (it != src.end()) {
1134
254k
        const auto len = detail::code_point_length_by_starting_code_unit(*it);
1135
254k
        if (len == 0) {
1136
0
            return false;
1137
0
        }
1138
254k
        if (src.end() - it < len) {
1139
0
            return false;
1140
0
        }
1141
254k
        const auto cp = detail::decode_code_point_exhaustive(
1142
254k
            detail::make_string_view_from_iterators<CharT>(it, it + len));
1143
254k
        if (cp >= detail::invalid_code_point) {
1144
1.68k
            return false;
1145
1.68k
        }
1146
252k
        it += len;
1147
252k
    }
1148
55.0k
    return true;
1149
56.7k
}
1150
1151
template <typename Range>
1152
constexpr auto get_start_for_next_code_point(Range input)
1153
    -> ranges::const_iterator_t<Range>
1154
30.7k
{
1155
30.7k
    auto it = input.begin();
1156
101k
    for (; it != input.end(); ++it) {
1157
100k
        if (detail::code_point_length_by_starting_code_unit(*it) != 0) {
1158
29.0k
            break;
1159
29.0k
        }
1160
100k
    }
1161
30.7k
    return it;
1162
30.7k
}
_ZN3scn2v34impl29get_start_for_next_code_pointINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_
Line
Count
Source
1154
26.4k
{
1155
26.4k
    auto it = input.begin();
1156
95.9k
    for (; it != input.end(); ++it) {
1157
94.5k
        if (detail::code_point_length_by_starting_code_unit(*it) != 0) {
1158
25.0k
            break;
1159
25.0k
        }
1160
94.5k
    }
1161
26.4k
    return it;
1162
26.4k
}
Unexecuted instantiation: _ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_INS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENSF_ISH_E8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESR_
Unexecuted instantiation: _ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_
Unexecuted instantiation: _ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKcSA_EENS1_15take_width_viewINSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEE8sentinelILb1EEEEENSC_ISI_E8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESR_
Unexecuted instantiation: _ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESN_
_ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_
Line
Count
Source
1154
2.95k
{
1155
2.95k
    auto it = input.begin();
1156
3.85k
    for (; it != input.end(); ++it) {
1157
3.70k
        if (detail::code_point_length_by_starting_code_unit(*it) != 0) {
1158
2.80k
            break;
1159
2.80k
        }
1160
3.70k
    }
1161
2.95k
    return it;
1162
2.95k
}
Unexecuted instantiation: _ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
_ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Line
Count
Source
1154
1.34k
{
1155
1.34k
    auto it = input.begin();
1156
1.91k
    for (; it != input.end(); ++it) {
1157
1.86k
        if (detail::code_point_length_by_starting_code_unit(*it) != 0) {
1158
1.29k
            break;
1159
1.29k
        }
1160
1.86k
    }
1161
1.34k
    return it;
1162
1.34k
}
Unexecuted instantiation: _ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_INS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENSF_ISH_E8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESR_
Unexecuted instantiation: _ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_
Unexecuted instantiation: _ZN3scn2v34impl29get_start_for_next_code_pointINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_
Unexecuted instantiation: _ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKwSA_EENS1_15take_width_viewINSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEE8sentinelILb1EEEEENSC_ISI_E8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESR_
Unexecuted instantiation: _ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESN_
Unexecuted instantiation: _ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Unexecuted instantiation: _ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_
Unexecuted instantiation: _ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
Unexecuted instantiation: _ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENSC_ISE_E8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESO_
Unexecuted instantiation: _ZN3scn2v34impl29get_start_for_next_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENSC_ISE_E8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESO_
1163
1164
template <typename CharT>
1165
constexpr auto get_next_code_point(std::basic_string_view<CharT> input)
1166
    -> iterator_value_result<typename std::basic_string_view<CharT>::iterator,
1167
                             char32_t>
1168
464M
{
1169
464M
    SCN_EXPECT(!input.empty());
1170
1171
464M
    const auto len = detail::code_point_length_by_starting_code_unit(input[0]);
1172
464M
    if (SCN_UNLIKELY(len == 0)) {
1173
26.4k
        return {get_start_for_next_code_point(input),
1174
26.4k
                detail::invalid_code_point};
1175
26.4k
    }
1176
464M
    if (SCN_UNLIKELY(len > input.size())) {
1177
978
        return {input.end(), detail::invalid_code_point};
1178
978
    }
1179
1180
464M
    return {input.begin() + len,
1181
464M
            detail::decode_code_point_exhaustive(input.substr(0, len))};
1182
464M
}
scn::v3::impl::iterator_value_result<std::__1::basic_string_view<char, std::__1::char_traits<char> >::iterator, char32_t> scn::v3::impl::get_next_code_point<char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Line
Count
Source
1168
1.34M
{
1169
1.34M
    SCN_EXPECT(!input.empty());
1170
1171
1.34M
    const auto len = detail::code_point_length_by_starting_code_unit(input[0]);
1172
1.34M
    if (SCN_UNLIKELY(len == 0)) {
1173
26.4k
        return {get_start_for_next_code_point(input),
1174
26.4k
                detail::invalid_code_point};
1175
26.4k
    }
1176
1.31M
    if (SCN_UNLIKELY(len > input.size())) {
1177
978
        return {input.end(), detail::invalid_code_point};
1178
978
    }
1179
1180
1.31M
    return {input.begin() + len,
1181
1.31M
            detail::decode_code_point_exhaustive(input.substr(0, len))};
1182
1.31M
}
scn::v3::impl::iterator_value_result<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >::iterator, char32_t> scn::v3::impl::get_next_code_point<wchar_t>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)
Line
Count
Source
1168
463M
{
1169
463M
    SCN_EXPECT(!input.empty());
1170
1171
463M
    const auto len = detail::code_point_length_by_starting_code_unit(input[0]);
1172
463M
    if (SCN_UNLIKELY(len == 0)) {
1173
0
        return {get_start_for_next_code_point(input),
1174
0
                detail::invalid_code_point};
1175
0
    }
1176
463M
    if (SCN_UNLIKELY(len > input.size())) {
1177
0
        return {input.end(), detail::invalid_code_point};
1178
0
    }
1179
1180
463M
    return {input.begin() + len,
1181
463M
            detail::decode_code_point_exhaustive(input.substr(0, len))};
1182
463M
}
1183
1184
template <typename CharT>
1185
constexpr auto get_next_code_point_valid(std::basic_string_view<CharT> input)
1186
    -> iterator_value_result<typename std::basic_string_view<CharT>::iterator,
1187
                             char32_t>
1188
144k
{
1189
144k
    SCN_EXPECT(!input.empty());
1190
1191
144k
    const auto len = detail::code_point_length_by_starting_code_unit(input[0]);
1192
144k
    SCN_EXPECT(len <= input.size());
1193
1194
144k
    return {input.begin() + len,
1195
144k
            detail::decode_code_point_exhaustive_valid(input.substr(0, len))};
1196
144k
}
1197
1198
constexpr bool is_cp_space(char32_t cp) noexcept
1199
463M
{
1200
    // Pattern_White_Space property
1201
463M
    return (cp >= 0x09 && cp <= 0x0d) ||
1202
463M
           cp == 0x20 ||    // ASCII space characters
1203
463M
           cp == 0x85 ||    // NEXT LINE (NEL)
1204
463M
           cp == 0x200e ||  // LEFT-TO-RIGHT MARK
1205
463M
           cp == 0x200f ||  // RIGHT-TO-LEFT MARK
1206
463M
           cp == 0x2028 ||  // LINE SEPARATOR
1207
463M
           cp == 0x2029;    // PARAGRAPH SEPARATOR
1208
463M
}
1209
1210
template <typename CharT>
1211
struct is_first_char_space_result {
1212
    ranges::iterator_t<std::basic_string_view<CharT>> iterator;
1213
    char32_t cp;
1214
    bool is_space;
1215
};
1216
1217
template <typename CharT>
1218
inline constexpr auto is_first_char_space(std::basic_string_view<CharT> str)
1219
    -> is_first_char_space_result<CharT>
1220
463M
{
1221
    // TODO: optimize
1222
463M
    SCN_EXPECT(!str.empty());
1223
463M
    auto res = get_next_code_point(str);
1224
463M
    return {res.iterator, res.value, is_cp_space(res.value)};
1225
463M
}
scn::v3::impl::is_first_char_space_result<char> scn::v3::impl::is_first_char_space<char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Line
Count
Source
1220
52.9k
{
1221
    // TODO: optimize
1222
52.9k
    SCN_EXPECT(!str.empty());
1223
52.9k
    auto res = get_next_code_point(str);
1224
52.9k
    return {res.iterator, res.value, is_cp_space(res.value)};
1225
52.9k
}
scn::v3::impl::is_first_char_space_result<wchar_t> scn::v3::impl::is_first_char_space<wchar_t>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)
Line
Count
Source
1220
463M
{
1221
    // TODO: optimize
1222
463M
    SCN_EXPECT(!str.empty());
1223
463M
    auto res = get_next_code_point(str);
1224
463M
    return {res.iterator, res.value, is_cp_space(res.value)};
1225
463M
}
1226
1227
inline constexpr scan_expected<wchar_t> encode_code_point_as_wide_character(
1228
    char32_t cp,
1229
    bool error_on_overflow)
1230
0
{
1231
0
    SCN_EXPECT(cp < detail::invalid_code_point);
1232
0
    if constexpr (sizeof(wchar_t) == sizeof(char32_t)) {
1233
0
        SCN_UNUSED(error_on_overflow);
1234
0
        return static_cast<wchar_t>(cp);
1235
    }
1236
    else {
1237
        if (cp < 0x10000) {
1238
            return static_cast<wchar_t>(cp);
1239
        }
1240
        if (error_on_overflow) {
1241
            return unexpected_scan_error(scan_error::value_out_of_range,
1242
                                         "Non-BOM code point can't be "
1243
                                         "narrowed to a single 2-byte "
1244
                                         "wchar_t code unit");
1245
        }
1246
        // Return the lead surrogate
1247
        return static_cast<wchar_t>(
1248
            (static_cast<uint32_t>(cp) - 0x10000) / 0x400 + 0xd800);
1249
    }
1250
0
}
1251
1252
template <typename SourceCharT, typename DestCharT>
1253
void transcode_to_string_impl_to32(std::basic_string_view<SourceCharT> src,
1254
                                   std::basic_string<DestCharT>& dest)
1255
6.27k
{
1256
6.27k
    static_assert(sizeof(DestCharT) == 4);
1257
1258
6.27k
    auto it = src.begin();
1259
1.20M
    while (it != src.end()) {
1260
1.19M
        auto res = get_next_code_point(
1261
1.19M
            detail::make_string_view_from_iterators<SourceCharT>(it,
1262
1.19M
                                                                 src.end()));
1263
1.19M
        if (SCN_UNLIKELY(res.value == detail::invalid_code_point)) {
1264
34.2k
            dest.push_back(DestCharT{0xfffd});
1265
34.2k
        }
1266
1.16M
        else {
1267
1.16M
            dest.push_back(res.value);
1268
1.16M
        }
1269
1.19M
        it = detail::make_string_view_iterator(src, res.iterator);
1270
1.19M
    }
1271
6.27k
}
1272
template <typename SourceCharT, typename DestCharT>
1273
void transcode_valid_to_string_impl_to32(
1274
    std::basic_string_view<SourceCharT> src,
1275
    std::basic_string<DestCharT>& dest)
1276
2.25k
{
1277
2.25k
    static_assert(sizeof(DestCharT) == 4);
1278
1279
2.25k
    auto it = src.begin();
1280
146k
    while (it != src.end()) {
1281
144k
        auto res = get_next_code_point_valid(
1282
144k
            detail::make_string_view_from_iterators<SourceCharT>(it,
1283
144k
                                                                 src.end()));
1284
144k
        SCN_EXPECT(res.value < detail::invalid_code_point);
1285
144k
        dest.push_back(res.value);
1286
144k
        it = detail::make_string_view_iterator(src, res.iterator);
1287
144k
    }
1288
2.25k
}
1289
1290
template <bool VerifiedValid, typename SourceCharT, typename DestCharT>
1291
void transcode_to_string_impl_32to8(std::basic_string_view<SourceCharT> src,
1292
                                    std::basic_string<DestCharT>& dest)
1293
13.7k
{
1294
13.7k
    static_assert(sizeof(SourceCharT) == 4);
1295
13.7k
    static_assert(sizeof(DestCharT) == 1);
1296
1297
59.2k
    for (auto cp : src) {
1298
59.2k
        const auto u32cp = static_cast<uint32_t>(cp);
1299
59.2k
        if (SCN_UNLIKELY(!VerifiedValid && cp >= detail::invalid_code_point)) {
1300
            // Replacement character
1301
0
            dest.push_back(static_cast<char>(0xef));
1302
0
            dest.push_back(static_cast<char>(0xbf));
1303
0
            dest.push_back(static_cast<char>(0xbd));
1304
0
        }
1305
59.2k
        else if (cp < 128) {
1306
45.0k
            dest.push_back(static_cast<char>(cp));
1307
45.0k
        }
1308
14.2k
        else if (cp < 2048) {
1309
164
            dest.push_back(
1310
164
                static_cast<char>(0xc0 | (static_cast<char>(u32cp >> 6))));
1311
164
            dest.push_back(
1312
164
                static_cast<char>(0x80 | (static_cast<char>(u32cp) & 0x3f)));
1313
164
        }
1314
14.0k
        else if (cp < 65536) {
1315
13.5k
            dest.push_back(
1316
13.5k
                static_cast<char>(0xe0 | (static_cast<char>(u32cp >> 12))));
1317
13.5k
            dest.push_back(static_cast<char>(
1318
13.5k
                0x80 | (static_cast<char>(u32cp >> 6) & 0x3f)));
1319
13.5k
            dest.push_back(
1320
13.5k
                static_cast<char>(0x80 | (static_cast<char>(u32cp) & 0x3f)));
1321
13.5k
        }
1322
464
        else {
1323
464
            dest.push_back(
1324
464
                static_cast<char>(0xf0 | (static_cast<char>(u32cp >> 18))));
1325
464
            dest.push_back(static_cast<char>(
1326
464
                0x80 | (static_cast<char>(u32cp >> 12) & 0x3f)));
1327
464
            dest.push_back(static_cast<char>(
1328
464
                0x80 | (static_cast<char>(u32cp >> 6) & 0x3f)));
1329
464
            dest.push_back(
1330
464
                static_cast<char>(0x80 | (static_cast<char>(u32cp) & 0x3f)));
1331
464
        }
1332
59.2k
    }
1333
13.7k
}
1334
1335
template <bool VerifiedValid, typename SourceCharT, typename DestCharT>
1336
void transcode_to_string_impl_32to16(std::basic_string_view<SourceCharT> src,
1337
                                     std::basic_string<DestCharT>& dest)
1338
{
1339
    static_assert(sizeof(SourceCharT) == 4);
1340
    static_assert(sizeof(DestCharT) == 2);
1341
1342
    for (auto cp : src) {
1343
        const auto u32cp = static_cast<uint32_t>(cp);
1344
        if (SCN_UNLIKELY(!VerifiedValid && cp >= detail::invalid_code_point)) {
1345
            dest.push_back(char16_t{0xfffd});
1346
        }
1347
        else if (cp < 0x10000) {
1348
            dest.push_back(static_cast<char16_t>(cp));
1349
        }
1350
        else {
1351
            dest.push_back(
1352
                static_cast<char16_t>((u32cp - 0x10000) / 0x400 + 0xd800));
1353
            dest.push_back(
1354
                static_cast<char16_t>((u32cp - 0x10000) % 0x400 + 0xd800));
1355
        }
1356
    }
1357
}
1358
1359
template <typename SourceCharT, typename DestCharT>
1360
void transcode_to_string(std::basic_string_view<SourceCharT> src,
1361
                         std::basic_string<DestCharT>& dest)
1362
6.27k
{
1363
6.27k
    static_assert(sizeof(SourceCharT) != sizeof(DestCharT));
1364
1365
6.27k
    if constexpr (sizeof(SourceCharT) == 1) {
1366
        if constexpr (sizeof(DestCharT) == 2) {
1367
            std::u32string tmp;
1368
            transcode_to_string_impl_to32(src, tmp);
1369
            return transcode_to_string_impl_32to16<false>(
1370
                std::u32string_view{tmp}, dest);
1371
        }
1372
6.27k
        else if constexpr (sizeof(DestCharT) == 4) {
1373
6.27k
            return transcode_to_string_impl_to32(src, dest);
1374
6.27k
        }
1375
    }
1376
    else if constexpr (sizeof(SourceCharT) == 2) {
1377
        if constexpr (sizeof(DestCharT) == 1) {
1378
            std::u32string tmp;
1379
            transcode_to_string_impl_to32(src, tmp);
1380
            return transcode_to_string_impl_32to8<false>(
1381
                std::u32string_view{tmp}, dest);
1382
        }
1383
        else if constexpr (sizeof(DestCharT) == 4) {
1384
            return trasncode_to_string_impl_to32(src, dest);
1385
        }
1386
    }
1387
    else if constexpr (sizeof(SourceCharT) == 4) {
1388
        if constexpr (sizeof(DestCharT) == 1) {
1389
            return transcode_to_string_impl_32to8<false>(src, dest);
1390
        }
1391
        else if constexpr (sizeof(DestCharT) == 2) {
1392
            return transcode_to_string_impl_32to16<false>(src, dest);
1393
        }
1394
    }
1395
1396
6.27k
    SCN_EXPECT(false);
1397
6.27k
    SCN_UNREACHABLE;
1398
6.27k
}
1399
template <typename SourceCharT, typename DestCharT>
1400
void transcode_valid_to_string(std::basic_string_view<SourceCharT> src,
1401
                               std::basic_string<DestCharT>& dest)
1402
16.0k
{
1403
16.0k
    static_assert(sizeof(SourceCharT) != sizeof(DestCharT));
1404
1405
16.0k
    SCN_EXPECT(validate_unicode(src));
1406
16.0k
    if constexpr (sizeof(SourceCharT) == 1) {
1407
        if constexpr (sizeof(DestCharT) == 2) {
1408
            // TODO: Optimize, remove utf32-step, go direct utf8->utf16
1409
            std::u32string tmp;
1410
            transcode_valid_to_string_impl_to32(src, tmp);
1411
            return transcode_to_string_impl_32to16<true>(
1412
                std::u32string_view{tmp}, dest);
1413
        }
1414
2.25k
        else if constexpr (sizeof(DestCharT) == 4) {
1415
2.25k
            return transcode_valid_to_string_impl_to32(src, dest);
1416
2.25k
        }
1417
    }
1418
    else if constexpr (sizeof(SourceCharT) == 2) {
1419
        if constexpr (sizeof(DestCharT) == 1) {
1420
            std::u32string tmp;
1421
            transcode_valid_to_string_impl_to32(src, tmp);
1422
            return transcode_to_string_impl_32to8<true>(
1423
                std::u32string_view{tmp}, dest);
1424
        }
1425
        else if constexpr (sizeof(DestCharT) == 4) {
1426
            return trasncode_valid_to_string_impl_to32(src, dest);
1427
        }
1428
    }
1429
13.7k
    else if constexpr (sizeof(SourceCharT) == 4) {
1430
13.7k
        if constexpr (sizeof(DestCharT) == 1) {
1431
13.7k
            return transcode_to_string_impl_32to8<true>(src, dest);
1432
        }
1433
        else if constexpr (sizeof(DestCharT) == 2) {
1434
            return transcode_to_string_impl_32to16<true>(src, dest);
1435
        }
1436
13.7k
    }
1437
1438
16.0k
    SCN_EXPECT(false);
1439
16.0k
    SCN_UNREACHABLE;
1440
16.0k
}
void scn::v3::impl::transcode_valid_to_string<char, wchar_t>(std::__1::basic_string_view<char, std::__1::char_traits<char> >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
1402
2.25k
{
1403
2.25k
    static_assert(sizeof(SourceCharT) != sizeof(DestCharT));
1404
1405
2.25k
    SCN_EXPECT(validate_unicode(src));
1406
2.25k
    if constexpr (sizeof(SourceCharT) == 1) {
1407
        if constexpr (sizeof(DestCharT) == 2) {
1408
            // TODO: Optimize, remove utf32-step, go direct utf8->utf16
1409
            std::u32string tmp;
1410
            transcode_valid_to_string_impl_to32(src, tmp);
1411
            return transcode_to_string_impl_32to16<true>(
1412
                std::u32string_view{tmp}, dest);
1413
        }
1414
2.25k
        else if constexpr (sizeof(DestCharT) == 4) {
1415
2.25k
            return transcode_valid_to_string_impl_to32(src, dest);
1416
2.25k
        }
1417
    }
1418
    else if constexpr (sizeof(SourceCharT) == 2) {
1419
        if constexpr (sizeof(DestCharT) == 1) {
1420
            std::u32string tmp;
1421
            transcode_valid_to_string_impl_to32(src, tmp);
1422
            return transcode_to_string_impl_32to8<true>(
1423
                std::u32string_view{tmp}, dest);
1424
        }
1425
        else if constexpr (sizeof(DestCharT) == 4) {
1426
            return trasncode_valid_to_string_impl_to32(src, dest);
1427
        }
1428
    }
1429
    else if constexpr (sizeof(SourceCharT) == 4) {
1430
        if constexpr (sizeof(DestCharT) == 1) {
1431
            return transcode_to_string_impl_32to8<true>(src, dest);
1432
        }
1433
        else if constexpr (sizeof(DestCharT) == 2) {
1434
            return transcode_to_string_impl_32to16<true>(src, dest);
1435
        }
1436
    }
1437
1438
2.25k
    SCN_EXPECT(false);
1439
0
    SCN_UNREACHABLE;
1440
2.25k
}
void scn::v3::impl::transcode_valid_to_string<wchar_t, char>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
1402
13.7k
{
1403
13.7k
    static_assert(sizeof(SourceCharT) != sizeof(DestCharT));
1404
1405
13.7k
    SCN_EXPECT(validate_unicode(src));
1406
    if constexpr (sizeof(SourceCharT) == 1) {
1407
        if constexpr (sizeof(DestCharT) == 2) {
1408
            // TODO: Optimize, remove utf32-step, go direct utf8->utf16
1409
            std::u32string tmp;
1410
            transcode_valid_to_string_impl_to32(src, tmp);
1411
            return transcode_to_string_impl_32to16<true>(
1412
                std::u32string_view{tmp}, dest);
1413
        }
1414
        else if constexpr (sizeof(DestCharT) == 4) {
1415
            return transcode_valid_to_string_impl_to32(src, dest);
1416
        }
1417
    }
1418
    else if constexpr (sizeof(SourceCharT) == 2) {
1419
        if constexpr (sizeof(DestCharT) == 1) {
1420
            std::u32string tmp;
1421
            transcode_valid_to_string_impl_to32(src, tmp);
1422
            return transcode_to_string_impl_32to8<true>(
1423
                std::u32string_view{tmp}, dest);
1424
        }
1425
        else if constexpr (sizeof(DestCharT) == 4) {
1426
            return trasncode_valid_to_string_impl_to32(src, dest);
1427
        }
1428
    }
1429
13.7k
    else if constexpr (sizeof(SourceCharT) == 4) {
1430
13.7k
        if constexpr (sizeof(DestCharT) == 1) {
1431
13.7k
            return transcode_to_string_impl_32to8<true>(src, dest);
1432
        }
1433
        else if constexpr (sizeof(DestCharT) == 2) {
1434
            return transcode_to_string_impl_32to16<true>(src, dest);
1435
        }
1436
13.7k
    }
1437
1438
13.7k
    SCN_EXPECT(false);
1439
0
    SCN_UNREACHABLE;
1440
13.7k
}
1441
1442
template <typename CharT>
1443
constexpr void for_each_code_point(std::basic_string_view<CharT> input,
1444
                                   function_ref<void(char32_t)> cb)
1445
29.4k
{
1446
    // TODO: Could be optimized by being eager
1447
29.4k
    auto it = input.begin();
1448
89.5k
    while (it != input.end()) {
1449
60.0k
        auto res = get_next_code_point(
1450
60.0k
            detail::make_string_view_from_iterators<CharT>(it, input.end()));
1451
60.0k
        cb(res.value);
1452
60.0k
        it = detail::make_string_view_iterator(input, res.iterator);
1453
60.0k
    }
1454
29.4k
}
void scn::v3::impl::for_each_code_point<char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >, scn::v3::impl::function_ref<void (char32_t), void (char32_t)>)
Line
Count
Source
1445
25.3k
{
1446
    // TODO: Could be optimized by being eager
1447
25.3k
    auto it = input.begin();
1448
78.0k
    while (it != input.end()) {
1449
52.7k
        auto res = get_next_code_point(
1450
52.7k
            detail::make_string_view_from_iterators<CharT>(it, input.end()));
1451
52.7k
        cb(res.value);
1452
52.7k
        it = detail::make_string_view_iterator(input, res.iterator);
1453
52.7k
    }
1454
25.3k
}
void scn::v3::impl::for_each_code_point<wchar_t>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, scn::v3::impl::function_ref<void (char32_t), void (char32_t)>)
Line
Count
Source
1445
4.17k
{
1446
    // TODO: Could be optimized by being eager
1447
4.17k
    auto it = input.begin();
1448
11.5k
    while (it != input.end()) {
1449
7.34k
        auto res = get_next_code_point(
1450
7.34k
            detail::make_string_view_from_iterators<CharT>(it, input.end()));
1451
7.34k
        cb(res.value);
1452
7.34k
        it = detail::make_string_view_iterator(input, res.iterator);
1453
7.34k
    }
1454
4.17k
}
1455
1456
template <typename CharT>
1457
constexpr void for_each_code_point_valid(std::basic_string_view<CharT> input,
1458
                                         function_ref<void(char32_t)> cb)
1459
{
1460
    auto it = input.begin();
1461
    while (it != input.end()) {
1462
        auto res = get_next_code_point_valid(
1463
            detail::make_string_view_from_iterators<CharT>(it, input.end()));
1464
        cb(res.value);
1465
        it = detail::make_string_view_iterator(input, res.iterator);
1466
    }
1467
}
1468
1469
/////////////////////////////////////////////////////////////////
1470
// contiguous_range_factory
1471
/////////////////////////////////////////////////////////////////
1472
1473
template <typename View>
1474
class take_width_view;
1475
1476
template <typename CharT>
1477
struct string_view_wrapper {
1478
    using char_type = CharT;
1479
    using string_type = std::basic_string<CharT>;
1480
    using string_view_type = std::basic_string_view<CharT>;
1481
1482
    constexpr string_view_wrapper() = default;
1483
1484
    template <typename Range,
1485
              std::enable_if_t<ranges::borrowed_range<Range> &&
1486
                               ranges::contiguous_range<Range> &&
1487
                               ranges::sized_range<Range>>* = nullptr>
1488
124k
    constexpr string_view_wrapper(Range&& r) : sv(ranges::data(r), r.size())
1489
124k
    {
1490
124k
    }
_ZN3scn2v34impl19string_view_wrapperIcEC2INS0_6ranges6detail9subrange_8subrangeIPKcSA_EETnPNSt3__19enable_ifIXaaaasr6rangesE14borrowed_rangeIT_Esr6rangesE16contiguous_rangeISE_Esr6rangesE11sized_rangeISE_EEvE4typeELPv0EEEOSE_
Line
Count
Source
1488
14.3k
    constexpr string_view_wrapper(Range&& r) : sv(ranges::data(r), r.size())
1489
14.3k
    {
1490
14.3k
    }
_ZN3scn2v34impl19string_view_wrapperIcEC2IRNS0_6ranges6detail9subrange_8subrangeIPKcSA_EETnPNSt3__19enable_ifIXaaaasr6rangesE14borrowed_rangeIT_Esr6rangesE16contiguous_rangeISF_Esr6rangesE11sized_rangeISF_EEvE4typeELPv0EEEOSF_
Line
Count
Source
1488
16.4k
    constexpr string_view_wrapper(Range&& r) : sv(ranges::data(r), r.size())
1489
16.4k
    {
1490
16.4k
    }
_ZN3scn2v34impl19string_view_wrapperIwEC2INS0_6ranges6detail9subrange_8subrangeIPKwSA_EETnPNSt3__19enable_ifIXaaaasr6rangesE14borrowed_rangeIT_Esr6rangesE16contiguous_rangeISE_Esr6rangesE11sized_rangeISE_EEvE4typeELPv0EEEOSE_
Line
Count
Source
1488
87.0k
    constexpr string_view_wrapper(Range&& r) : sv(ranges::data(r), r.size())
1489
87.0k
    {
1490
87.0k
    }
_ZN3scn2v34impl19string_view_wrapperIcEC2IRNSt3__117basic_string_viewIcNS5_11char_traitsIcEEEETnPNS5_9enable_ifIXaaaasr6rangesE14borrowed_rangeIT_Esr6rangesE16contiguous_rangeISC_Esr6rangesE11sized_rangeISC_EEvE4typeELPv0EEEOSC_
Line
Count
Source
1488
6.70k
    constexpr string_view_wrapper(Range&& r) : sv(ranges::data(r), r.size())
1489
6.70k
    {
1490
6.70k
    }
1491
1492
    template <typename Range,
1493
              std::enable_if_t<ranges::borrowed_range<Range> &&
1494
                               ranges::contiguous_range<Range> &&
1495
                               ranges::sized_range<Range>>* = nullptr>
1496
    void assign(Range&& r)
1497
    {
1498
        sv = string_view_type{ranges::data(r), r.size()};
1499
    }
1500
1501
    constexpr auto view() const
1502
178k
    {
1503
178k
        return sv;
1504
178k
    }
scn::v3::impl::string_view_wrapper<char>::view() const
Line
Count
Source
1502
64.5k
    {
1503
64.5k
        return sv;
1504
64.5k
    }
scn::v3::impl::string_view_wrapper<wchar_t>::view() const
Line
Count
Source
1502
114k
    {
1503
114k
        return sv;
1504
114k
    }
1505
1506
    constexpr bool stores_allocated_string() const
1507
0
    {
1508
0
        return false;
1509
0
    }
Unexecuted instantiation: scn::v3::impl::string_view_wrapper<char>::stores_allocated_string() const
Unexecuted instantiation: scn::v3::impl::string_view_wrapper<wchar_t>::stores_allocated_string() const
1510
1511
    [[noreturn]] string_type get_allocated_string() const
1512
    {
1513
        SCN_EXPECT(false);
1514
        SCN_UNREACHABLE;
1515
    }
1516
1517
    string_view_type sv;
1518
};
1519
1520
template <typename Range>
1521
string_view_wrapper(Range)
1522
    -> string_view_wrapper<detail::char_t<detail::remove_cvref_t<Range>>>;
1523
1524
template <typename CharT>
1525
class contiguous_range_factory {
1526
public:
1527
    using char_type = CharT;
1528
    using string_type = std::basic_string<CharT>;
1529
    using string_view_type = std::basic_string_view<CharT>;
1530
1531
29.5k
    contiguous_range_factory() = default;
scn::v3::impl::contiguous_range_factory<char>::contiguous_range_factory()
Line
Count
Source
1531
2.38k
    contiguous_range_factory() = default;
scn::v3::impl::contiguous_range_factory<wchar_t>::contiguous_range_factory()
Line
Count
Source
1531
27.1k
    contiguous_range_factory() = default;
1532
1533
    template <typename Range,
1534
              std::enable_if_t<ranges::forward_range<Range>>* = nullptr>
1535
    contiguous_range_factory(Range&& range)
1536
2.04k
    {
1537
2.04k
        emplace_range(SCN_FWD(range));
1538
2.04k
    }
Unexecuted instantiation: _ZN3scn2v34impl24contiguous_range_factoryIcEC2INS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEESG_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEOSK_
Unexecuted instantiation: _ZN3scn2v34impl24contiguous_range_factoryIcEC2INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorESC_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEOSG_
_ZN3scn2v34impl24contiguous_range_factoryIcEC2INS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EESD_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEOSH_
Line
Count
Source
1536
1.60k
    {
1537
1.60k
        emplace_range(SCN_FWD(range));
1538
1.60k
    }
Unexecuted instantiation: _ZN3scn2v34impl24contiguous_range_factoryIwEC2INS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEESG_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEOSK_
Unexecuted instantiation: _ZN3scn2v34impl24contiguous_range_factoryIwEC2INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorESC_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEOSG_
_ZN3scn2v34impl24contiguous_range_factoryIwEC2INS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EESD_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEOSH_
Line
Count
Source
1536
438
    {
1537
438
        emplace_range(SCN_FWD(range));
1538
438
    }
1539
1540
    contiguous_range_factory(string_view_wrapper<CharT> svw)
1541
        : m_storage(std::nullopt), m_view(svw.view())
1542
    {
1543
    }
1544
1545
    contiguous_range_factory(const contiguous_range_factory&) = delete;
1546
    contiguous_range_factory& operator=(const contiguous_range_factory&) =
1547
        delete;
1548
1549
    contiguous_range_factory(contiguous_range_factory&& other)
1550
        : m_storage(SCN_MOVE(other.m_storage))
1551
    {
1552
        if (m_storage) {
1553
            m_view = *m_storage;
1554
        }
1555
        else {
1556
            m_view = other.m_view;
1557
        }
1558
    }
1559
    contiguous_range_factory& operator=(contiguous_range_factory&& other)
1560
    {
1561
        m_storage = SCN_MOVE(other.m_storage);
1562
        if (m_storage) {
1563
            m_view = *m_storage;
1564
        }
1565
        else {
1566
            m_view = other.m_view;
1567
        }
1568
        return *this;
1569
    }
1570
1571
31.5k
    ~contiguous_range_factory() = default;
scn::v3::impl::contiguous_range_factory<char>::~contiguous_range_factory()
Line
Count
Source
1571
3.98k
    ~contiguous_range_factory() = default;
scn::v3::impl::contiguous_range_factory<wchar_t>::~contiguous_range_factory()
Line
Count
Source
1571
27.5k
    ~contiguous_range_factory() = default;
1572
1573
    template <typename Range,
1574
              std::enable_if_t<ranges::forward_range<Range>>* = nullptr>
1575
    void assign(Range&& range)
1576
14.3k
    {
1577
14.3k
        emplace_range(SCN_FWD(range));
1578
14.3k
    }
Unexecuted instantiation: _ZN3scn2v34impl24contiguous_range_factoryIcE6assignINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEESG_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSK_
Unexecuted instantiation: _ZN3scn2v34impl24contiguous_range_factoryIcE6assignINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorESC_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSG_
Unexecuted instantiation: _ZN3scn2v34impl24contiguous_range_factoryIcE6assignINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EESD_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSH_
_ZN3scn2v34impl24contiguous_range_factoryIcE6assignINS0_6ranges6detail9subrange_8subrangeIPKcSA_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSE_
Line
Count
Source
1576
896
    {
1577
896
        emplace_range(SCN_FWD(range));
1578
896
    }
Unexecuted instantiation: _ZN3scn2v34impl24contiguous_range_factoryIwE6assignINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEESG_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSK_
Unexecuted instantiation: _ZN3scn2v34impl24contiguous_range_factoryIwE6assignINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorESC_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSG_
Unexecuted instantiation: _ZN3scn2v34impl24contiguous_range_factoryIwE6assignINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EESD_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSH_
_ZN3scn2v34impl24contiguous_range_factoryIwE6assignINS0_6ranges6detail9subrange_8subrangeIPKwSA_EETnPNSt3__19enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSE_
Line
Count
Source
1576
13.4k
    {
1577
13.4k
        emplace_range(SCN_FWD(range));
1578
13.4k
    }
Unexecuted instantiation: _ZN3scn2v34impl24contiguous_range_factoryIcE6assignINSt3__112basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEETnPNS5_9enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSD_
Unexecuted instantiation: _ZN3scn2v34impl24contiguous_range_factoryIwE6assignINSt3__112basic_stringIwNS5_11char_traitsIwEENS5_9allocatorIwEEEETnPNS5_9enable_ifIXsr6rangesE13forward_rangeIT_EEvE4typeELPv0EEEvOSD_
1579
1580
    string_view_type view() const
1581
31.2k
    {
1582
31.2k
        return m_view;
1583
31.2k
    }
scn::v3::impl::contiguous_range_factory<char>::view() const
Line
Count
Source
1581
3.77k
    {
1582
3.77k
        return m_view;
1583
3.77k
    }
scn::v3::impl::contiguous_range_factory<wchar_t>::view() const
Line
Count
Source
1581
27.4k
    {
1582
27.4k
        return m_view;
1583
27.4k
    }
1584
1585
    constexpr bool stores_allocated_string() const
1586
1.03k
    {
1587
1.03k
        return m_storage.has_value();
1588
1.03k
    }
scn::v3::impl::contiguous_range_factory<char>::stores_allocated_string() const
Line
Count
Source
1586
768
    {
1587
768
        return m_storage.has_value();
1588
768
    }
scn::v3::impl::contiguous_range_factory<wchar_t>::stores_allocated_string() const
Line
Count
Source
1586
268
    {
1587
268
        return m_storage.has_value();
1588
268
    }
1589
1590
    string_type& get_allocated_string() &
1591
518
    {
1592
518
        SCN_EXPECT(stores_allocated_string());
1593
518
        return *m_storage;
1594
518
    }
scn::v3::impl::contiguous_range_factory<char>::get_allocated_string() &
Line
Count
Source
1591
384
    {
1592
384
        SCN_EXPECT(stores_allocated_string());
1593
384
        return *m_storage;
1594
384
    }
scn::v3::impl::contiguous_range_factory<wchar_t>::get_allocated_string() &
Line
Count
Source
1591
134
    {
1592
134
        SCN_EXPECT(stores_allocated_string());
1593
134
        return *m_storage;
1594
134
    }
1595
    const string_type& get_allocated_string() const&
1596
    {
1597
        SCN_EXPECT(stores_allocated_string());
1598
        return *m_storage;
1599
    }
1600
    string_type&& get_allocated_string() &&
1601
    {
1602
        SCN_EXPECT(stores_allocated_string());
1603
        return *m_storage;
1604
    }
1605
1606
    string_type& make_into_allocated_string()
1607
0
    {
1608
0
        if (stores_allocated_string()) {
1609
0
            return get_allocated_string();
1610
0
        }
1611
1612
0
        auto& str = m_storage.emplace(m_view.data(), m_view.size());
1613
0
        m_view = string_view_type{str.data(), str.size()};
1614
0
        return str;
1615
0
    }
Unexecuted instantiation: scn::v3::impl::contiguous_range_factory<char>::make_into_allocated_string()
Unexecuted instantiation: scn::v3::impl::contiguous_range_factory<wchar_t>::make_into_allocated_string()
1616
1617
private:
1618
    template <typename Range>
1619
    void emplace_range(Range&& range)
1620
16.3k
    {
1621
16.3k
        using value_t = ranges::range_value_t<Range>;
1622
1623
        if constexpr (ranges::borrowed_range<Range> &&
1624
                      ranges::contiguous_range<Range> &&
1625
14.3k
                      ranges::sized_range<Range>) {
1626
14.3k
            m_storage.reset();
1627
14.3k
            m_view = string_view_type{ranges::data(range), range.size()};
1628
        }
1629
        else if constexpr (std::is_same_v<detail::remove_cvref_t<Range>,
1630
0
                                          std::basic_string<CharT>>) {
1631
0
            m_storage.emplace(SCN_FWD(range));
1632
0
            m_view = string_view_type{*m_storage};
1633
        }
1634
        else if constexpr (std::is_same_v<ranges::iterator_t<Range>,
1635
                                          typename detail::basic_scan_buffer<
1636
                                              value_t>::forward_iterator> &&
1637
0
                           ranges::common_range<Range>) {
1638
0
            auto beg_seg = range.begin().contiguous_segment();
1639
0
            auto end_seg = range.end().contiguous_segment();
1640
0
            if (SCN_UNLIKELY(detail::to_address(beg_seg.end()) !=
1641
0
                             detail::to_address(end_seg.end()))) {
1642
0
                auto& str = m_storage.emplace();
1643
0
                str.reserve(range.end().position() - range.begin().position());
1644
0
                std::copy(range.begin(), range.end(), std::back_inserter(str));
1645
0
                m_view = string_view_type{str};
1646
0
                return;
1647
0
            }
1648
1649
0
            m_view = detail::make_string_view_from_pointers(beg_seg.data(),
1650
0
                                                            end_seg.data());
1651
0
            m_storage.reset();
1652
        }
1653
2.04k
        else {
1654
2.04k
            auto& str = m_storage.emplace();
1655
            if constexpr (ranges::sized_range<Range>) {
1656
                str.reserve(range.size());
1657
            }
1658
2.04k
            if constexpr (ranges::common_range<Range>) {
1659
2.04k
                std::copy(ranges::begin(range), ranges::end(range),
1660
2.04k
                          std::back_inserter(str));
1661
            }
1662
            else {
1663
                for (auto it = ranges::begin(range); it != ranges::end(range);
1664
                     ++it) {
1665
                    str.push_back(*it);
1666
                }
1667
            }
1668
2.04k
            m_view = string_view_type{str};
1669
2.04k
        }
1670
16.3k
    }
Unexecuted instantiation: void scn::v3::impl::contiguous_range_factory<char>::emplace_range<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >&&)
Unexecuted instantiation: void scn::v3::impl::contiguous_range_factory<char>::emplace_range<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::detail::basic_scan_buffer<char>::forward_iterator> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::detail::basic_scan_buffer<char>::forward_iterator>&&)
void scn::v3::impl::contiguous_range_factory<char>::emplace_range<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >&&)
Line
Count
Source
1620
1.60k
    {
1621
1.60k
        using value_t = ranges::range_value_t<Range>;
1622
1623
        if constexpr (ranges::borrowed_range<Range> &&
1624
                      ranges::contiguous_range<Range> &&
1625
                      ranges::sized_range<Range>) {
1626
            m_storage.reset();
1627
            m_view = string_view_type{ranges::data(range), range.size()};
1628
        }
1629
        else if constexpr (std::is_same_v<detail::remove_cvref_t<Range>,
1630
                                          std::basic_string<CharT>>) {
1631
            m_storage.emplace(SCN_FWD(range));
1632
            m_view = string_view_type{*m_storage};
1633
        }
1634
        else if constexpr (std::is_same_v<ranges::iterator_t<Range>,
1635
                                          typename detail::basic_scan_buffer<
1636
                                              value_t>::forward_iterator> &&
1637
                           ranges::common_range<Range>) {
1638
            auto beg_seg = range.begin().contiguous_segment();
1639
            auto end_seg = range.end().contiguous_segment();
1640
            if (SCN_UNLIKELY(detail::to_address(beg_seg.end()) !=
1641
                             detail::to_address(end_seg.end()))) {
1642
                auto& str = m_storage.emplace();
1643
                str.reserve(range.end().position() - range.begin().position());
1644
                std::copy(range.begin(), range.end(), std::back_inserter(str));
1645
                m_view = string_view_type{str};
1646
                return;
1647
            }
1648
1649
            m_view = detail::make_string_view_from_pointers(beg_seg.data(),
1650
                                                            end_seg.data());
1651
            m_storage.reset();
1652
        }
1653
1.60k
        else {
1654
1.60k
            auto& str = m_storage.emplace();
1655
            if constexpr (ranges::sized_range<Range>) {
1656
                str.reserve(range.size());
1657
            }
1658
1.60k
            if constexpr (ranges::common_range<Range>) {
1659
1.60k
                std::copy(ranges::begin(range), ranges::end(range),
1660
1.60k
                          std::back_inserter(str));
1661
            }
1662
            else {
1663
                for (auto it = ranges::begin(range); it != ranges::end(range);
1664
                     ++it) {
1665
                    str.push_back(*it);
1666
                }
1667
            }
1668
1.60k
            m_view = string_view_type{str};
1669
1.60k
        }
1670
1.60k
    }
void scn::v3::impl::contiguous_range_factory<char>::emplace_range<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>&&)
Line
Count
Source
1620
896
    {
1621
896
        using value_t = ranges::range_value_t<Range>;
1622
1623
        if constexpr (ranges::borrowed_range<Range> &&
1624
                      ranges::contiguous_range<Range> &&
1625
896
                      ranges::sized_range<Range>) {
1626
896
            m_storage.reset();
1627
896
            m_view = string_view_type{ranges::data(range), range.size()};
1628
        }
1629
        else if constexpr (std::is_same_v<detail::remove_cvref_t<Range>,
1630
                                          std::basic_string<CharT>>) {
1631
            m_storage.emplace(SCN_FWD(range));
1632
            m_view = string_view_type{*m_storage};
1633
        }
1634
        else if constexpr (std::is_same_v<ranges::iterator_t<Range>,
1635
                                          typename detail::basic_scan_buffer<
1636
                                              value_t>::forward_iterator> &&
1637
                           ranges::common_range<Range>) {
1638
            auto beg_seg = range.begin().contiguous_segment();
1639
            auto end_seg = range.end().contiguous_segment();
1640
            if (SCN_UNLIKELY(detail::to_address(beg_seg.end()) !=
1641
                             detail::to_address(end_seg.end()))) {
1642
                auto& str = m_storage.emplace();
1643
                str.reserve(range.end().position() - range.begin().position());
1644
                std::copy(range.begin(), range.end(), std::back_inserter(str));
1645
                m_view = string_view_type{str};
1646
                return;
1647
            }
1648
1649
            m_view = detail::make_string_view_from_pointers(beg_seg.data(),
1650
                                                            end_seg.data());
1651
            m_storage.reset();
1652
        }
1653
        else {
1654
            auto& str = m_storage.emplace();
1655
            if constexpr (ranges::sized_range<Range>) {
1656
                str.reserve(range.size());
1657
            }
1658
            if constexpr (ranges::common_range<Range>) {
1659
                std::copy(ranges::begin(range), ranges::end(range),
1660
                          std::back_inserter(str));
1661
            }
1662
            else {
1663
                for (auto it = ranges::begin(range); it != ranges::end(range);
1664
                     ++it) {
1665
                    str.push_back(*it);
1666
                }
1667
            }
1668
            m_view = string_view_type{str};
1669
        }
1670
896
    }
Unexecuted instantiation: void scn::v3::impl::contiguous_range_factory<wchar_t>::emplace_range<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >&&)
Unexecuted instantiation: void scn::v3::impl::contiguous_range_factory<wchar_t>::emplace_range<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>&&)
void scn::v3::impl::contiguous_range_factory<wchar_t>::emplace_range<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >&&)
Line
Count
Source
1620
438
    {
1621
438
        using value_t = ranges::range_value_t<Range>;
1622
1623
        if constexpr (ranges::borrowed_range<Range> &&
1624
                      ranges::contiguous_range<Range> &&
1625
                      ranges::sized_range<Range>) {
1626
            m_storage.reset();
1627
            m_view = string_view_type{ranges::data(range), range.size()};
1628
        }
1629
        else if constexpr (std::is_same_v<detail::remove_cvref_t<Range>,
1630
                                          std::basic_string<CharT>>) {
1631
            m_storage.emplace(SCN_FWD(range));
1632
            m_view = string_view_type{*m_storage};
1633
        }
1634
        else if constexpr (std::is_same_v<ranges::iterator_t<Range>,
1635
                                          typename detail::basic_scan_buffer<
1636
                                              value_t>::forward_iterator> &&
1637
                           ranges::common_range<Range>) {
1638
            auto beg_seg = range.begin().contiguous_segment();
1639
            auto end_seg = range.end().contiguous_segment();
1640
            if (SCN_UNLIKELY(detail::to_address(beg_seg.end()) !=
1641
                             detail::to_address(end_seg.end()))) {
1642
                auto& str = m_storage.emplace();
1643
                str.reserve(range.end().position() - range.begin().position());
1644
                std::copy(range.begin(), range.end(), std::back_inserter(str));
1645
                m_view = string_view_type{str};
1646
                return;
1647
            }
1648
1649
            m_view = detail::make_string_view_from_pointers(beg_seg.data(),
1650
                                                            end_seg.data());
1651
            m_storage.reset();
1652
        }
1653
438
        else {
1654
438
            auto& str = m_storage.emplace();
1655
            if constexpr (ranges::sized_range<Range>) {
1656
                str.reserve(range.size());
1657
            }
1658
438
            if constexpr (ranges::common_range<Range>) {
1659
438
                std::copy(ranges::begin(range), ranges::end(range),
1660
438
                          std::back_inserter(str));
1661
            }
1662
            else {
1663
                for (auto it = ranges::begin(range); it != ranges::end(range);
1664
                     ++it) {
1665
                    str.push_back(*it);
1666
                }
1667
            }
1668
438
            m_view = string_view_type{str};
1669
438
        }
1670
438
    }
void scn::v3::impl::contiguous_range_factory<wchar_t>::emplace_range<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>&&)
Line
Count
Source
1620
13.4k
    {
1621
13.4k
        using value_t = ranges::range_value_t<Range>;
1622
1623
        if constexpr (ranges::borrowed_range<Range> &&
1624
                      ranges::contiguous_range<Range> &&
1625
13.4k
                      ranges::sized_range<Range>) {
1626
13.4k
            m_storage.reset();
1627
13.4k
            m_view = string_view_type{ranges::data(range), range.size()};
1628
        }
1629
        else if constexpr (std::is_same_v<detail::remove_cvref_t<Range>,
1630
                                          std::basic_string<CharT>>) {
1631
            m_storage.emplace(SCN_FWD(range));
1632
            m_view = string_view_type{*m_storage};
1633
        }
1634
        else if constexpr (std::is_same_v<ranges::iterator_t<Range>,
1635
                                          typename detail::basic_scan_buffer<
1636
                                              value_t>::forward_iterator> &&
1637
                           ranges::common_range<Range>) {
1638
            auto beg_seg = range.begin().contiguous_segment();
1639
            auto end_seg = range.end().contiguous_segment();
1640
            if (SCN_UNLIKELY(detail::to_address(beg_seg.end()) !=
1641
                             detail::to_address(end_seg.end()))) {
1642
                auto& str = m_storage.emplace();
1643
                str.reserve(range.end().position() - range.begin().position());
1644
                std::copy(range.begin(), range.end(), std::back_inserter(str));
1645
                m_view = string_view_type{str};
1646
                return;
1647
            }
1648
1649
            m_view = detail::make_string_view_from_pointers(beg_seg.data(),
1650
                                                            end_seg.data());
1651
            m_storage.reset();
1652
        }
1653
        else {
1654
            auto& str = m_storage.emplace();
1655
            if constexpr (ranges::sized_range<Range>) {
1656
                str.reserve(range.size());
1657
            }
1658
            if constexpr (ranges::common_range<Range>) {
1659
                std::copy(ranges::begin(range), ranges::end(range),
1660
                          std::back_inserter(str));
1661
            }
1662
            else {
1663
                for (auto it = ranges::begin(range); it != ranges::end(range);
1664
                     ++it) {
1665
                    str.push_back(*it);
1666
                }
1667
            }
1668
            m_view = string_view_type{str};
1669
        }
1670
13.4k
    }
Unexecuted instantiation: void scn::v3::impl::contiguous_range_factory<char>::emplace_range<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&&)
Unexecuted instantiation: void scn::v3::impl::contiguous_range_factory<wchar_t>::emplace_range<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&&)
1671
1672
    std::optional<string_type> m_storage{std::nullopt};
1673
    string_view_type m_view{};
1674
};
1675
1676
template <typename Range>
1677
contiguous_range_factory(Range)
1678
    -> contiguous_range_factory<detail::char_t<detail::remove_cvref_t<Range>>>;
1679
1680
template <typename Range>
1681
auto make_contiguous_buffer(Range&& range)
1682
126k
{
1683
    if constexpr (ranges::borrowed_range<Range> &&
1684
                  ranges::contiguous_range<Range> &&
1685
124k
                  ranges::sized_range<Range>) {
1686
124k
        return string_view_wrapper{SCN_FWD(range)};
1687
    }
1688
2.04k
    else {
1689
2.04k
        return contiguous_range_factory{SCN_FWD(range)};
1690
2.04k
    }
1691
126k
}
Unexecuted instantiation: auto scn::v3::impl::make_contiguous_buffer<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >&&)
Unexecuted instantiation: auto scn::v3::impl::make_contiguous_buffer<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::detail::basic_scan_buffer<char>::forward_iterator> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::detail::basic_scan_buffer<char>::forward_iterator>&&)
auto scn::v3::impl::make_contiguous_buffer<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >&&)
Line
Count
Source
1682
1.60k
{
1683
    if constexpr (ranges::borrowed_range<Range> &&
1684
                  ranges::contiguous_range<Range> &&
1685
                  ranges::sized_range<Range>) {
1686
        return string_view_wrapper{SCN_FWD(range)};
1687
    }
1688
1.60k
    else {
1689
1.60k
        return contiguous_range_factory{SCN_FWD(range)};
1690
1.60k
    }
1691
1.60k
}
auto scn::v3::impl::make_contiguous_buffer<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>&&)
Line
Count
Source
1682
14.3k
{
1683
    if constexpr (ranges::borrowed_range<Range> &&
1684
                  ranges::contiguous_range<Range> &&
1685
14.3k
                  ranges::sized_range<Range>) {
1686
14.3k
        return string_view_wrapper{SCN_FWD(range)};
1687
    }
1688
    else {
1689
        return contiguous_range_factory{SCN_FWD(range)};
1690
    }
1691
14.3k
}
auto scn::v3::impl::make_contiguous_buffer<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>&>(scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>&)
Line
Count
Source
1682
16.4k
{
1683
    if constexpr (ranges::borrowed_range<Range> &&
1684
                  ranges::contiguous_range<Range> &&
1685
16.4k
                  ranges::sized_range<Range>) {
1686
16.4k
        return string_view_wrapper{SCN_FWD(range)};
1687
    }
1688
    else {
1689
        return contiguous_range_factory{SCN_FWD(range)};
1690
    }
1691
16.4k
}
Unexecuted instantiation: auto scn::v3::impl::make_contiguous_buffer<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >&&)
Unexecuted instantiation: auto scn::v3::impl::make_contiguous_buffer<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>&&)
auto scn::v3::impl::make_contiguous_buffer<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >&&)
Line
Count
Source
1682
438
{
1683
    if constexpr (ranges::borrowed_range<Range> &&
1684
                  ranges::contiguous_range<Range> &&
1685
                  ranges::sized_range<Range>) {
1686
        return string_view_wrapper{SCN_FWD(range)};
1687
    }
1688
438
    else {
1689
438
        return contiguous_range_factory{SCN_FWD(range)};
1690
438
    }
1691
438
}
auto scn::v3::impl::make_contiguous_buffer<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>&&)
Line
Count
Source
1682
87.0k
{
1683
    if constexpr (ranges::borrowed_range<Range> &&
1684
                  ranges::contiguous_range<Range> &&
1685
87.0k
                  ranges::sized_range<Range>) {
1686
87.0k
        return string_view_wrapper{SCN_FWD(range)};
1687
    }
1688
    else {
1689
        return contiguous_range_factory{SCN_FWD(range)};
1690
    }
1691
87.0k
}
auto scn::v3::impl::make_contiguous_buffer<std::__1::basic_string_view<char, std::__1::char_traits<char> >&>(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
Line
Count
Source
1682
6.70k
{
1683
    if constexpr (ranges::borrowed_range<Range> &&
1684
                  ranges::contiguous_range<Range> &&
1685
6.70k
                  ranges::sized_range<Range>) {
1686
6.70k
        return string_view_wrapper{SCN_FWD(range)};
1687
    }
1688
    else {
1689
        return contiguous_range_factory{SCN_FWD(range)};
1690
    }
1691
6.70k
}
1692
}  // namespace impl
1693
1694
/////////////////////////////////////////////////////////////////
1695
// locale stuff
1696
/////////////////////////////////////////////////////////////////
1697
1698
#if !SCN_DISABLE_LOCALE
1699
1700
namespace detail {
1701
extern template locale_ref::locale_ref(const std::locale&);
1702
extern template auto locale_ref::get() const -> std::locale;
1703
}  // namespace detail
1704
1705
namespace impl {
1706
template <typename Facet>
1707
const Facet& get_facet(detail::locale_ref loc)
1708
{
1709
    auto stdloc = loc.get<std::locale>();
1710
    SCN_EXPECT(std::has_facet<Facet>(stdloc));
1711
    return std::use_facet<Facet>(stdloc);
1712
}
1713
1714
template <typename Facet>
1715
const Facet& get_or_add_facet(std::locale& stdloc)
1716
204
{
1717
204
    if (std::has_facet<Facet>(stdloc)) {
1718
204
        return std::use_facet<Facet>(stdloc);
1719
204
    }
1720
0
    stdloc = std::locale(stdloc, new Facet{});
1721
0
    return std::use_facet<Facet>(stdloc);
1722
204
}
std::__1::numpunct<char> const& scn::v3::impl::get_or_add_facet<std::__1::numpunct<char> >(std::__1::locale&)
Line
Count
Source
1716
96
{
1717
96
    if (std::has_facet<Facet>(stdloc)) {
1718
96
        return std::use_facet<Facet>(stdloc);
1719
96
    }
1720
0
    stdloc = std::locale(stdloc, new Facet{});
1721
0
    return std::use_facet<Facet>(stdloc);
1722
96
}
std::__1::numpunct<wchar_t> const& scn::v3::impl::get_or_add_facet<std::__1::numpunct<wchar_t> >(std::__1::locale&)
Line
Count
Source
1716
108
{
1717
108
    if (std::has_facet<Facet>(stdloc)) {
1718
108
        return std::use_facet<Facet>(stdloc);
1719
108
    }
1720
0
    stdloc = std::locale(stdloc, new Facet{});
1721
0
    return std::use_facet<Facet>(stdloc);
1722
108
}
1723
1724
class clocale_restorer {
1725
public:
1726
0
    clocale_restorer(int cat) : m_category(cat)
1727
0
    {
1728
0
        const auto loc = std::setlocale(cat, nullptr);
1729
0
        std::strcpy(m_locbuf, loc);
1730
0
    }
1731
    ~clocale_restorer()
1732
0
    {
1733
        // Restore locale to what it was before
1734
0
        std::setlocale(m_category, m_locbuf);
1735
0
    }
1736
1737
    clocale_restorer(const clocale_restorer&) = delete;
1738
    clocale_restorer(clocale_restorer&&) = delete;
1739
    clocale_restorer& operator=(const clocale_restorer&) = delete;
1740
    clocale_restorer& operator=(clocale_restorer&&) = delete;
1741
1742
private:
1743
    // For whatever reason, this cannot be stored in the heap if
1744
    // setlocale hasn't been called before, or msan errors with
1745
    // 'use-of-unitialized-value' when resetting the locale
1746
    // back. POSIX specifies that the content of loc may not be
1747
    // static, so we need to save it ourselves
1748
    char m_locbuf[64] = {0};
1749
1750
    int m_category;
1751
};
1752
1753
class set_clocale_classic_guard {
1754
public:
1755
0
    set_clocale_classic_guard(int cat) : m_restorer(cat)
1756
0
    {
1757
0
        std::setlocale(cat, "C");
1758
0
    }
1759
1760
private:
1761
    clocale_restorer m_restorer;
1762
};
1763
}  // namespace impl
1764
1765
namespace impl {
1766
struct classic_with_thsep_tag {};
1767
1768
template <typename CharT>
1769
struct localized_number_formatting_options {
1770
14.7k
    localized_number_formatting_options() = default;
scn::v3::impl::localized_number_formatting_options<char>::localized_number_formatting_options()
Line
Count
Source
1770
1.19k
    localized_number_formatting_options() = default;
scn::v3::impl::localized_number_formatting_options<wchar_t>::localized_number_formatting_options()
Line
Count
Source
1770
13.5k
    localized_number_formatting_options() = default;
1771
1772
    localized_number_formatting_options(classic_with_thsep_tag)
1773
0
    {
1774
0
        grouping = "\3";
1775
0
        thousands_sep = CharT{','};
1776
0
    }
Unexecuted instantiation: scn::v3::impl::localized_number_formatting_options<char>::localized_number_formatting_options(scn::v3::impl::classic_with_thsep_tag)
Unexecuted instantiation: scn::v3::impl::localized_number_formatting_options<wchar_t>::localized_number_formatting_options(scn::v3::impl::classic_with_thsep_tag)
1777
1778
    localized_number_formatting_options(detail::locale_ref loc)
1779
158
    {
1780
158
        auto stdloc = loc.get<std::locale>();
1781
158
        const auto& numpunct = get_or_add_facet<std::numpunct<CharT>>(stdloc);
1782
158
        grouping = numpunct.grouping();
1783
158
        thousands_sep =
1784
158
            grouping.length() != 0 ? numpunct.thousands_sep() : CharT{0};
1785
158
        decimal_point = numpunct.decimal_point();
1786
158
    }
scn::v3::impl::localized_number_formatting_options<char>::localized_number_formatting_options(scn::v3::detail::locale_ref)
Line
Count
Source
1779
70
    {
1780
70
        auto stdloc = loc.get<std::locale>();
1781
70
        const auto& numpunct = get_or_add_facet<std::numpunct<CharT>>(stdloc);
1782
70
        grouping = numpunct.grouping();
1783
70
        thousands_sep =
1784
70
            grouping.length() != 0 ? numpunct.thousands_sep() : CharT{0};
1785
70
        decimal_point = numpunct.decimal_point();
1786
70
    }
scn::v3::impl::localized_number_formatting_options<wchar_t>::localized_number_formatting_options(scn::v3::detail::locale_ref)
Line
Count
Source
1779
88
    {
1780
88
        auto stdloc = loc.get<std::locale>();
1781
88
        const auto& numpunct = get_or_add_facet<std::numpunct<CharT>>(stdloc);
1782
88
        grouping = numpunct.grouping();
1783
88
        thousands_sep =
1784
88
            grouping.length() != 0 ? numpunct.thousands_sep() : CharT{0};
1785
88
        decimal_point = numpunct.decimal_point();
1786
88
    }
1787
1788
    std::string grouping{};
1789
    CharT thousands_sep{0};
1790
    CharT decimal_point{CharT{'.'}};
1791
};
1792
}  // namespace impl
1793
1794
#else
1795
1796
namespace impl {
1797
struct set_clocale_classic_guard {
1798
    set_clocale_classic_guard(int) {}
1799
};
1800
1801
struct classic_with_thsep_tag {};
1802
1803
template <typename CharT>
1804
struct localized_number_formatting_options {
1805
    localized_number_formatting_options() = default;
1806
1807
    localized_number_formatting_options(classic_with_thsep_tag)
1808
    {
1809
        grouping = "\3";
1810
        thousands_sep = CharT{','};
1811
    }
1812
1813
    std::string grouping{};
1814
    CharT thousands_sep{0};
1815
    CharT decimal_point{CharT{'.'}};
1816
};
1817
}  // namespace impl
1818
1819
#endif  // !SCN_DISABLE_LOCALE
1820
1821
/////////////////////////////////////////////////////////////////
1822
// Range reading algorithms
1823
/////////////////////////////////////////////////////////////////
1824
1825
namespace impl {
1826
1827
std::string_view::iterator find_classic_space_narrow_fast(
1828
    std::string_view source);
1829
1830
std::string_view::iterator find_classic_nonspace_narrow_fast(
1831
    std::string_view source);
1832
1833
std::string_view::iterator find_nondecimal_digit_narrow_fast(
1834
    std::string_view source);
1835
1836
template <typename Range>
1837
auto read_all(Range range) -> ranges::const_iterator_t<Range>
1838
14.4k
{
1839
14.4k
    return ranges::next(range.begin(), range.end());
1840
14.4k
}
_ZN3scn2v34impl8read_allINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Line
Count
Source
1838
896
{
1839
896
    return ranges::next(range.begin(), range.end());
1840
896
}
Unexecuted instantiation: _ZN3scn2v34impl8read_allINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_
_ZN3scn2v34impl8read_allINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_
Line
Count
Source
1838
96
{
1839
96
    return ranges::next(range.begin(), range.end());
1840
96
}
_ZN3scn2v34impl8read_allINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Line
Count
Source
1838
13.4k
{
1839
13.4k
    return ranges::next(range.begin(), range.end());
1840
13.4k
}
Unexecuted instantiation: _ZN3scn2v34impl8read_allINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_
_ZN3scn2v34impl8read_allINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_
Line
Count
Source
1838
48
{
1839
48
    return ranges::next(range.begin(), range.end());
1840
48
}
1841
1842
template <typename Range>
1843
auto read_code_unit(Range range)
1844
    -> eof_expected<ranges::const_iterator_t<Range>>
1845
103k
{
1846
103k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
1847
0
        return unexpected(e);
1848
0
    }
1849
1850
103k
    return ranges::next(range.begin());
1851
103k
}
Unexecuted instantiation: _ZN3scn2v34impl14read_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
Unexecuted instantiation: _ZN3scn2v34impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_
Unexecuted instantiation: _ZN3scn2v34impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_
_ZN3scn2v34impl14read_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
1845
1.88k
{
1846
1.88k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
1847
0
        return unexpected(e);
1848
0
    }
1849
1850
1.88k
    return ranges::next(range.begin());
1851
1.88k
}
_ZN3scn2v34impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_
Line
Count
Source
1845
34
{
1846
34
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
1847
0
        return unexpected(e);
1848
0
    }
1849
1850
34
    return ranges::next(range.begin());
1851
34
}
_ZN3scn2v34impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_
Line
Count
Source
1845
6.44k
{
1846
6.44k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
1847
0
        return unexpected(e);
1848
0
    }
1849
1850
6.44k
    return ranges::next(range.begin());
1851
6.44k
}
Unexecuted instantiation: _ZN3scn2v34impl14read_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
Unexecuted instantiation: _ZN3scn2v34impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_
Unexecuted instantiation: _ZN3scn2v34impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_
_ZN3scn2v34impl14read_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
1845
1.03k
{
1846
1.03k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
1847
0
        return unexpected(e);
1848
0
    }
1849
1850
1.03k
    return ranges::next(range.begin());
1851
1.03k
}
_ZN3scn2v34impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_
Line
Count
Source
1845
38
{
1846
38
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
1847
0
        return unexpected(e);
1848
0
    }
1849
1850
38
    return ranges::next(range.begin());
1851
38
}
_ZN3scn2v34impl14read_code_unitINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_
Line
Count
Source
1845
94.0k
{
1846
94.0k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
1847
0
        return unexpected(e);
1848
0
    }
1849
1850
94.0k
    return ranges::next(range.begin());
1851
94.0k
}
1852
1853
template <typename Range>
1854
auto read_exactly_n_code_units(Range range, std::ptrdiff_t count)
1855
    -> eof_expected<ranges::const_iterator_t<Range>>
1856
109k
{
1857
109k
    SCN_EXPECT(count >= 0);
1858
1859
109k
    if constexpr (ranges::sized_range<Range>) {
1860
104k
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1861
104k
        if (sz < count) {
1862
582
            return unexpected(eof_error::eof);
1863
582
        }
1864
1865
103k
        return ranges::next(range.begin(), count);
1866
    }
1867
5.57k
    else {
1868
5.57k
        auto it = range.begin();
1869
5.57k
        if (guaranteed_minimum_size(range) >= count) {
1870
0
            return ranges::next(it, count);
1871
0
        }
1872
1873
21.5k
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1874
16.5k
            if (it == range.end()) {
1875
554
                return unexpected(eof_error::eof);
1876
554
            }
1877
16.5k
        }
1878
1879
5.02k
        return it;
1880
5.57k
    }
1881
109k
}
Unexecuted instantiation: _ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_l
Unexecuted instantiation: _ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_l
Unexecuted instantiation: _ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_INS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENSF_ISH_E8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_l
_ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_l
Line
Count
Source
1856
23.5k
{
1857
23.5k
    SCN_EXPECT(count >= 0);
1858
1859
23.5k
    if constexpr (ranges::sized_range<Range>) {
1860
23.5k
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1861
23.5k
        if (sz < count) {
1862
440
            return unexpected(eof_error::eof);
1863
440
        }
1864
1865
23.0k
        return ranges::next(range.begin(), count);
1866
    }
1867
    else {
1868
        auto it = range.begin();
1869
        if (guaranteed_minimum_size(range) >= count) {
1870
            return ranges::next(it, count);
1871
        }
1872
1873
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1874
            if (it == range.end()) {
1875
                return unexpected(eof_error::eof);
1876
            }
1877
        }
1878
1879
        return it;
1880
    }
1881
23.5k
}
Unexecuted instantiation: _ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEEESO_l
Unexecuted instantiation: _ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKcSA_EENS1_15take_width_viewINSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEE8sentinelILb1EEEEENSC_ISI_E8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEEESS_l
_ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_l
Line
Count
Source
1856
3.74k
{
1857
3.74k
    SCN_EXPECT(count >= 0);
1858
1859
    if constexpr (ranges::sized_range<Range>) {
1860
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1861
        if (sz < count) {
1862
            return unexpected(eof_error::eof);
1863
        }
1864
1865
        return ranges::next(range.begin(), count);
1866
    }
1867
3.74k
    else {
1868
3.74k
        auto it = range.begin();
1869
3.74k
        if (guaranteed_minimum_size(range) >= count) {
1870
0
            return ranges::next(it, count);
1871
0
        }
1872
1873
13.7k
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1874
10.2k
            if (it == range.end()) {
1875
210
                return unexpected(eof_error::eof);
1876
210
            }
1877
10.2k
        }
1878
1879
3.53k
        return it;
1880
3.74k
    }
1881
3.74k
}
Unexecuted instantiation: _ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_l
Unexecuted instantiation: _ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_l
Unexecuted instantiation: _ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_INS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENSF_ISH_E8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESS_l
_ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_l
Line
Count
Source
1856
80.7k
{
1857
80.7k
    SCN_EXPECT(count >= 0);
1858
1859
80.7k
    if constexpr (ranges::sized_range<Range>) {
1860
80.7k
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1861
80.7k
        if (sz < count) {
1862
142
            return unexpected(eof_error::eof);
1863
142
        }
1864
1865
80.5k
        return ranges::next(range.begin(), count);
1866
    }
1867
    else {
1868
        auto it = range.begin();
1869
        if (guaranteed_minimum_size(range) >= count) {
1870
            return ranges::next(it, count);
1871
        }
1872
1873
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1874
            if (it == range.end()) {
1875
                return unexpected(eof_error::eof);
1876
            }
1877
        }
1878
1879
        return it;
1880
    }
1881
80.7k
}
Unexecuted instantiation: _ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEEESO_l
Unexecuted instantiation: _ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKwSA_EENS1_15take_width_viewINSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEE8sentinelILb1EEEEENSC_ISI_E8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEEESS_l
_ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_l
Line
Count
Source
1856
638
{
1857
638
    SCN_EXPECT(count >= 0);
1858
1859
    if constexpr (ranges::sized_range<Range>) {
1860
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1861
        if (sz < count) {
1862
            return unexpected(eof_error::eof);
1863
        }
1864
1865
        return ranges::next(range.begin(), count);
1866
    }
1867
638
    else {
1868
638
        auto it = range.begin();
1869
638
        if (guaranteed_minimum_size(range) >= count) {
1870
0
            return ranges::next(it, count);
1871
0
        }
1872
1873
2.08k
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1874
1.54k
            if (it == range.end()) {
1875
92
                return unexpected(eof_error::eof);
1876
92
            }
1877
1.54k
        }
1878
1879
546
        return it;
1880
638
    }
1881
638
}
_ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENSC_ISE_E8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_l
Line
Count
Source
1856
246
{
1857
246
    SCN_EXPECT(count >= 0);
1858
1859
    if constexpr (ranges::sized_range<Range>) {
1860
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1861
        if (sz < count) {
1862
            return unexpected(eof_error::eof);
1863
        }
1864
1865
        return ranges::next(range.begin(), count);
1866
    }
1867
246
    else {
1868
246
        auto it = range.begin();
1869
246
        if (guaranteed_minimum_size(range) >= count) {
1870
0
            return ranges::next(it, count);
1871
0
        }
1872
1873
996
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1874
802
            if (it == range.end()) {
1875
52
                return unexpected(eof_error::eof);
1876
52
            }
1877
802
        }
1878
1879
194
        return it;
1880
246
    }
1881
246
}
_ZN3scn2v34impl25read_exactly_n_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_l
Line
Count
Source
1856
640
{
1857
640
    SCN_EXPECT(count >= 0);
1858
1859
    if constexpr (ranges::sized_range<Range>) {
1860
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1861
        if (sz < count) {
1862
            return unexpected(eof_error::eof);
1863
        }
1864
1865
        return ranges::next(range.begin(), count);
1866
    }
1867
640
    else {
1868
640
        auto it = range.begin();
1869
640
        if (guaranteed_minimum_size(range) >= count) {
1870
0
            return ranges::next(it, count);
1871
0
        }
1872
1873
3.16k
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1874
2.66k
            if (it == range.end()) {
1875
138
                return unexpected(eof_error::eof);
1876
138
            }
1877
2.66k
        }
1878
1879
502
        return it;
1880
640
    }
1881
640
}
Unexecuted instantiation: _ZN3scn2v34impl25read_exactly_n_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_l
Unexecuted instantiation: _ZN3scn2v34impl25read_exactly_n_code_unitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENSC_ISE_E8sentinelILb1EEEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESP_l
_ZN3scn2v34impl25read_exactly_n_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_l
Line
Count
Source
1856
308
{
1857
308
    SCN_EXPECT(count >= 0);
1858
1859
    if constexpr (ranges::sized_range<Range>) {
1860
        const auto sz = static_cast<std::ptrdiff_t>(range.size());
1861
        if (sz < count) {
1862
            return unexpected(eof_error::eof);
1863
        }
1864
1865
        return ranges::next(range.begin(), count);
1866
    }
1867
308
    else {
1868
308
        auto it = range.begin();
1869
308
        if (guaranteed_minimum_size(range) >= count) {
1870
0
            return ranges::next(it, count);
1871
0
        }
1872
1873
1.54k
        for (std::ptrdiff_t i = 0; i < count; ++i, (void)++it) {
1874
1.29k
            if (it == range.end()) {
1875
62
                return unexpected(eof_error::eof);
1876
62
            }
1877
1.29k
        }
1878
1879
246
        return it;
1880
308
    }
1881
308
}
Unexecuted instantiation: _ZN3scn2v34impl25read_exactly_n_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_l
1882
1883
template <typename Iterator, typename CharT>
1884
struct read_code_point_into_result {
1885
    Iterator iterator;
1886
    std::basic_string<CharT> codepoint;
1887
1888
    bool is_valid() const
1889
764k
    {
1890
764k
        return !codepoint.empty();
1891
764k
    }
Unexecuted instantiation: scn::v3::impl::read_code_point_into_result<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, char>::is_valid() const
Unexecuted instantiation: scn::v3::impl::read_code_point_into_result<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, char>::is_valid() const
Unexecuted instantiation: scn::v3::impl::read_code_point_into_result<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >, char>::is_valid() const
scn::v3::impl::read_code_point_into_result<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, char>::is_valid() const
Line
Count
Source
1889
27.1k
    {
1890
27.1k
        return !codepoint.empty();
1891
27.1k
    }
Unexecuted instantiation: scn::v3::impl::read_code_point_into_result<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, char>::is_valid() const
scn::v3::impl::read_code_point_into_result<char const*, char>::is_valid() const
Line
Count
Source
1889
372k
    {
1890
372k
        return !codepoint.empty();
1891
372k
    }
Unexecuted instantiation: scn::v3::impl::read_code_point_into_result<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >, wchar_t>::is_valid() const
Unexecuted instantiation: scn::v3::impl::read_code_point_into_result<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, wchar_t>::is_valid() const
Unexecuted instantiation: scn::v3::impl::read_code_point_into_result<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >, wchar_t>::is_valid() const
scn::v3::impl::read_code_point_into_result<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, wchar_t>::is_valid() const
Line
Count
Source
1889
11.1k
    {
1890
11.1k
        return !codepoint.empty();
1891
11.1k
    }
scn::v3::impl::read_code_point_into_result<wchar_t const*, wchar_t>::is_valid() const
Line
Count
Source
1889
349k
    {
1890
349k
        return !codepoint.empty();
1891
349k
    }
Unexecuted instantiation: scn::v3::impl::read_code_point_into_result<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, wchar_t>::is_valid() const
scn::v3::impl::read_code_point_into_result<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >, char>::is_valid() const
Line
Count
Source
1889
3.01k
    {
1890
3.01k
        return !codepoint.empty();
1891
3.01k
    }
scn::v3::impl::read_code_point_into_result<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >, wchar_t>::is_valid() const
Line
Count
Source
1889
970
    {
1890
970
        return !codepoint.empty();
1891
970
    }
1892
};
1893
1894
template <typename Range>
1895
auto read_code_point_into(Range range)
1896
    -> read_code_point_into_result<ranges::const_iterator_t<Range>,
1897
                                   detail::char_t<Range>>
1898
764k
{
1899
764k
    SCN_EXPECT(!is_range_eof(range));
1900
764k
    using string_type = std::basic_string<detail::char_t<Range>>;
1901
1902
764k
    auto it = range.begin();
1903
764k
    const auto len = detail::code_point_length_by_starting_code_unit(*it);
1904
1905
764k
    if (SCN_UNLIKELY(len == 0)) {
1906
4.30k
        ++it;
1907
4.30k
        it = get_start_for_next_code_point(ranges::subrange{it, range.end()});
1908
4.30k
        return {it, {}};
1909
4.30k
    }
1910
1911
759k
    if (len == 1) {
1912
705k
        ++it;
1913
705k
        return {it, string_type(1, *range.begin())};
1914
705k
    }
1915
1916
53.9k
    ranges::advance(it, static_cast<std::ptrdiff_t>(len), range.end());
1917
53.9k
    return {it, string_type{range.begin(), it}};
1918
759k
}
Unexecuted instantiation: _ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_INS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENSF_ISH_E8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISS_EEE4typeEEESS_
Unexecuted instantiation: _ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISO_EEE4typeEEESO_
Unexecuted instantiation: _ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKcSA_EENS1_15take_width_viewINSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEE8sentinelILb1EEEEENSC_ISI_E8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEENDTcl4implISS_EEE4typeEEESS_
Unexecuted instantiation: _ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEE8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEENDTcl4implISO_EEE4typeEEESO_
_ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISL_EEE4typeEEESL_
Line
Count
Source
1898
27.1k
{
1899
27.1k
    SCN_EXPECT(!is_range_eof(range));
1900
27.1k
    using string_type = std::basic_string<detail::char_t<Range>>;
1901
1902
27.1k
    auto it = range.begin();
1903
27.1k
    const auto len = detail::code_point_length_by_starting_code_unit(*it);
1904
1905
27.1k
    if (SCN_UNLIKELY(len == 0)) {
1906
2.95k
        ++it;
1907
2.95k
        it = get_start_for_next_code_point(ranges::subrange{it, range.end()});
1908
2.95k
        return {it, {}};
1909
2.95k
    }
1910
1911
24.1k
    if (len == 1) {
1912
20.8k
        ++it;
1913
20.8k
        return {it, string_type(1, *range.begin())};
1914
20.8k
    }
1915
1916
3.32k
    ranges::advance(it, static_cast<std::ptrdiff_t>(len), range.end());
1917
3.32k
    return {it, string_type{range.begin(), it}};
1918
24.1k
}
Unexecuted instantiation: _ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISG_EEE4typeEEESG_
_ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISD_EEE4typeEEESD_
Line
Count
Source
1898
372k
{
1899
372k
    SCN_EXPECT(!is_range_eof(range));
1900
372k
    using string_type = std::basic_string<detail::char_t<Range>>;
1901
1902
372k
    auto it = range.begin();
1903
372k
    const auto len = detail::code_point_length_by_starting_code_unit(*it);
1904
1905
372k
    if (SCN_UNLIKELY(len == 0)) {
1906
1.34k
        ++it;
1907
1.34k
        it = get_start_for_next_code_point(ranges::subrange{it, range.end()});
1908
1.34k
        return {it, {}};
1909
1.34k
    }
1910
1911
370k
    if (len == 1) {
1912
321k
        ++it;
1913
321k
        return {it, string_type(1, *range.begin())};
1914
321k
    }
1915
1916
49.9k
    ranges::advance(it, static_cast<std::ptrdiff_t>(len), range.end());
1917
49.9k
    return {it, string_type{range.begin(), it}};
1918
370k
}
Unexecuted instantiation: _ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_INS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENSF_ISH_E8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISS_EEE4typeEEESS_
Unexecuted instantiation: _ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISO_EEE4typeEEESO_
Unexecuted instantiation: _ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKwSA_EENS1_15take_width_viewINSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEE8sentinelILb1EEEEENSC_ISI_E8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEENDTcl4implISS_EEE4typeEEESS_
Unexecuted instantiation: _ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEE8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEENDTcl4implISO_EEE4typeEEESO_
_ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISD_EEE4typeEEESD_
Line
Count
Source
1898
349k
{
1899
349k
    SCN_EXPECT(!is_range_eof(range));
1900
349k
    using string_type = std::basic_string<detail::char_t<Range>>;
1901
1902
349k
    auto it = range.begin();
1903
349k
    const auto len = detail::code_point_length_by_starting_code_unit(*it);
1904
1905
349k
    if (SCN_UNLIKELY(len == 0)) {
1906
0
        ++it;
1907
0
        it = get_start_for_next_code_point(ranges::subrange{it, range.end()});
1908
0
        return {it, {}};
1909
0
    }
1910
1911
349k
    if (len == 1) {
1912
349k
        ++it;
1913
349k
        return {it, string_type(1, *range.begin())};
1914
349k
    }
1915
1916
0
    ranges::advance(it, static_cast<std::ptrdiff_t>(len), range.end());
1917
0
    return {it, string_type{range.begin(), it}};
1918
349k
}
_ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISL_EEE4typeEEESL_
Line
Count
Source
1898
11.1k
{
1899
11.1k
    SCN_EXPECT(!is_range_eof(range));
1900
11.1k
    using string_type = std::basic_string<detail::char_t<Range>>;
1901
1902
11.1k
    auto it = range.begin();
1903
11.1k
    const auto len = detail::code_point_length_by_starting_code_unit(*it);
1904
1905
11.1k
    if (SCN_UNLIKELY(len == 0)) {
1906
0
        ++it;
1907
0
        it = get_start_for_next_code_point(ranges::subrange{it, range.end()});
1908
0
        return {it, {}};
1909
0
    }
1910
1911
11.1k
    if (len == 1) {
1912
11.1k
        ++it;
1913
11.1k
        return {it, string_type(1, *range.begin())};
1914
11.1k
    }
1915
1916
0
    ranges::advance(it, static_cast<std::ptrdiff_t>(len), range.end());
1917
0
    return {it, string_type{range.begin(), it}};
1918
11.1k
}
Unexecuted instantiation: _ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISG_EEE4typeEEESG_
_ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENSC_ISE_E8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISP_EEE4typeEEESP_
Line
Count
Source
1898
3.01k
{
1899
3.01k
    SCN_EXPECT(!is_range_eof(range));
1900
3.01k
    using string_type = std::basic_string<detail::char_t<Range>>;
1901
1902
3.01k
    auto it = range.begin();
1903
3.01k
    const auto len = detail::code_point_length_by_starting_code_unit(*it);
1904
1905
3.01k
    if (SCN_UNLIKELY(len == 0)) {
1906
0
        ++it;
1907
0
        it = get_start_for_next_code_point(ranges::subrange{it, range.end()});
1908
0
        return {it, {}};
1909
0
    }
1910
1911
3.01k
    if (len == 1) {
1912
2.29k
        ++it;
1913
2.29k
        return {it, string_type(1, *range.begin())};
1914
2.29k
    }
1915
1916
724
    ranges::advance(it, static_cast<std::ptrdiff_t>(len), range.end());
1917
724
    return {it, string_type{range.begin(), it}};
1918
3.01k
}
Unexecuted instantiation: _ZN3scn2v34impl20read_code_point_intoINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_27read_code_point_into_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISF_EEE4typeEEESF_
Unexecuted instantiation: _ZN3scn2v34impl20read_code_point_intoINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISI_EEE4typeEEESI_
_ZN3scn2v34impl20read_code_point_intoINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS8_IPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENSC_ISE_E8sentinelILb1EEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISP_EEE4typeEEESP_
Line
Count
Source
1898
970
{
1899
970
    SCN_EXPECT(!is_range_eof(range));
1900
970
    using string_type = std::basic_string<detail::char_t<Range>>;
1901
1902
970
    auto it = range.begin();
1903
970
    const auto len = detail::code_point_length_by_starting_code_unit(*it);
1904
1905
970
    if (SCN_UNLIKELY(len == 0)) {
1906
0
        ++it;
1907
0
        it = get_start_for_next_code_point(ranges::subrange{it, range.end()});
1908
0
        return {it, {}};
1909
0
    }
1910
1911
970
    if (len == 1) {
1912
970
        ++it;
1913
970
        return {it, string_type(1, *range.begin())};
1914
970
    }
1915
1916
0
    ranges::advance(it, static_cast<std::ptrdiff_t>(len), range.end());
1917
0
    return {it, string_type{range.begin(), it}};
1918
970
}
Unexecuted instantiation: _ZN3scn2v34impl20read_code_point_intoINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_27read_code_point_into_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISF_EEE4typeEEESF_
Unexecuted instantiation: _ZN3scn2v34impl20read_code_point_intoINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_27read_code_point_into_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEENDTcl4implISI_EEE4typeEEESI_
1919
1920
template <typename Range>
1921
auto read_code_point(Range range) -> ranges::const_iterator_t<Range>
1922
{
1923
    return read_code_point_into(range).iterator;
1924
}
1925
1926
template <typename Range>
1927
auto read_exactly_n_code_points(Range range, std::ptrdiff_t count)
1928
    -> eof_expected<ranges::const_iterator_t<Range>>
1929
{
1930
    SCN_EXPECT(count >= 0);
1931
1932
    if (count > 0) {
1933
        if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
1934
            return unexpected(e);
1935
        }
1936
    }
1937
1938
    auto it = range.begin();
1939
    for (std::ptrdiff_t i = 0; i < count; ++i) {
1940
        auto rng = ranges::subrange{it, range.end()};
1941
1942
        if (auto e = eof_check(rng); SCN_UNLIKELY(!e)) {
1943
            return unexpected(e);
1944
        }
1945
1946
        it = read_code_point(rng);
1947
    }
1948
1949
    return it;
1950
}
1951
1952
template <typename Range>
1953
auto read_until_code_unit(Range range,
1954
                          function_ref<bool(detail::char_t<Range>)> pred)
1955
    -> ranges::const_iterator_t<Range>
1956
6.31k
{
1957
6.31k
    if constexpr (ranges::common_range<Range>) {
1958
3.26k
        return std::find_if(range.begin(), range.end(), pred);
1959
    }
1960
3.05k
    else {
1961
3.05k
        auto first = range.begin();
1962
13.1k
        for (; first != range.end(); ++first) {
1963
12.6k
            if (pred(*first)) {
1964
2.58k
                return first;
1965
2.58k
            }
1966
12.6k
        }
1967
472
        return first;
1968
3.05k
    }
1969
6.31k
}
Unexecuted instantiation: _ZN3scn2v34impl20read_until_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbNDTcl4implISH_EEE4typeEENS1_12fnref_detail11qual_fn_sigISP_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_until_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbNDTcl4implISI_EEE4typeEENS1_12fnref_detail11qual_fn_sigISQ_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_NS1_12function_refIFbNDTcl4implISN_EEE4typeEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_until_code_unitINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_until_code_unitINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbNDTcl4implISD_EEE4typeEENS1_12fnref_detail11qual_fn_sigISL_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_until_code_unitINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_NS1_12function_refIFbNDTcl4implISA_EEE4typeEENS1_12fnref_detail11qual_fn_sigISI_E8functionEEE
_ZN3scn2v34impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NS1_12function_refIFbNDTcl4implISK_EEE4typeEENS1_12fnref_detail11qual_fn_sigISS_E8functionEEE
Line
Count
Source
1956
1.06k
{
1957
    if constexpr (ranges::common_range<Range>) {
1958
        return std::find_if(range.begin(), range.end(), pred);
1959
    }
1960
1.06k
    else {
1961
1.06k
        auto first = range.begin();
1962
1.06k
        for (; first != range.end(); ++first) {
1963
1.06k
            if (pred(*first)) {
1964
1.06k
                return first;
1965
1.06k
            }
1966
1.06k
        }
1967
0
        return first;
1968
1.06k
    }
1969
1.06k
}
_ZN3scn2v34impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Line
Count
Source
1956
2.62k
{
1957
2.62k
    if constexpr (ranges::common_range<Range>) {
1958
2.62k
        return std::find_if(range.begin(), range.end(), pred);
1959
    }
1960
    else {
1961
        auto first = range.begin();
1962
        for (; first != range.end(); ++first) {
1963
            if (pred(*first)) {
1964
                return first;
1965
            }
1966
        }
1967
        return first;
1968
    }
1969
2.62k
}
_ZN3scn2v34impl20read_until_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbNDTcl4implISE_EEE4typeEENS1_12fnref_detail11qual_fn_sigISM_E8functionEEE
Line
Count
Source
1956
524
{
1957
    if constexpr (ranges::common_range<Range>) {
1958
        return std::find_if(range.begin(), range.end(), pred);
1959
    }
1960
524
    else {
1961
524
        auto first = range.begin();
1962
8.88k
        for (; first != range.end(); ++first) {
1963
8.60k
            if (pred(*first)) {
1964
250
                return first;
1965
250
            }
1966
8.60k
        }
1967
274
        return first;
1968
524
    }
1969
524
}
Unexecuted instantiation: _ZN3scn2v34impl20read_until_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbNDTcl4implISH_EEE4typeEENS1_12fnref_detail11qual_fn_sigISP_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_until_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbNDTcl4implISI_EEE4typeEENS1_12fnref_detail11qual_fn_sigISQ_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_NS1_12function_refIFbNDTcl4implISN_EEE4typeEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_until_code_unitINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_until_code_unitINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbNDTcl4implISD_EEE4typeEENS1_12fnref_detail11qual_fn_sigISL_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_until_code_unitINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_NS1_12function_refIFbNDTcl4implISA_EEE4typeEENS1_12fnref_detail11qual_fn_sigISI_E8functionEEE
_ZN3scn2v34impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NS1_12function_refIFbNDTcl4implISK_EEE4typeEENS1_12fnref_detail11qual_fn_sigISS_E8functionEEE
Line
Count
Source
1956
564
{
1957
    if constexpr (ranges::common_range<Range>) {
1958
        return std::find_if(range.begin(), range.end(), pred);
1959
    }
1960
564
    else {
1961
564
        auto first = range.begin();
1962
564
        for (; first != range.end(); ++first) {
1963
564
            if (pred(*first)) {
1964
564
                return first;
1965
564
            }
1966
564
        }
1967
0
        return first;
1968
564
    }
1969
564
}
_ZN3scn2v34impl20read_until_code_unitINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Line
Count
Source
1956
638
{
1957
638
    if constexpr (ranges::common_range<Range>) {
1958
638
        return std::find_if(range.begin(), range.end(), pred);
1959
    }
1960
    else {
1961
        auto first = range.begin();
1962
        for (; first != range.end(); ++first) {
1963
            if (pred(*first)) {
1964
                return first;
1965
            }
1966
        }
1967
        return first;
1968
    }
1969
638
}
_ZN3scn2v34impl20read_until_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbNDTcl4implISE_EEE4typeEENS1_12fnref_detail11qual_fn_sigISM_E8functionEEE
Line
Count
Source
1956
184
{
1957
    if constexpr (ranges::common_range<Range>) {
1958
        return std::find_if(range.begin(), range.end(), pred);
1959
    }
1960
184
    else {
1961
184
        auto first = range.begin();
1962
1.57k
        for (; first != range.end(); ++first) {
1963
1.46k
            if (pred(*first)) {
1964
74
                return first;
1965
74
            }
1966
1.46k
        }
1967
110
        return first;
1968
184
    }
1969
184
}
_ZN3scn2v34impl20read_until_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Line
Count
Source
1956
482
{
1957
    if constexpr (ranges::common_range<Range>) {
1958
        return std::find_if(range.begin(), range.end(), pred);
1959
    }
1960
482
    else {
1961
482
        auto first = range.begin();
1962
718
        for (; first != range.end(); ++first) {
1963
664
            if (pred(*first)) {
1964
428
                return first;
1965
428
            }
1966
664
        }
1967
54
        return first;
1968
482
    }
1969
482
}
_ZN3scn2v34impl20read_until_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Line
Count
Source
1956
234
{
1957
    if constexpr (ranges::common_range<Range>) {
1958
        return std::find_if(range.begin(), range.end(), pred);
1959
    }
1960
234
    else {
1961
234
        auto first = range.begin();
1962
314
        for (; first != range.end(); ++first) {
1963
280
            if (pred(*first)) {
1964
200
                return first;
1965
200
            }
1966
280
        }
1967
34
        return first;
1968
234
    }
1969
234
}
1970
1971
template <typename Range>
1972
auto read_while_code_unit(Range range,
1973
                          function_ref<bool(detail::char_t<Range>)> pred)
1974
    -> ranges::const_iterator_t<Range>
1975
5.60k
{
1976
5.60k
    return read_until_code_unit(range, std::not_fn(pred));
1977
5.60k
}
Unexecuted instantiation: _ZN3scn2v34impl20read_while_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbNDTcl4implISH_EEE4typeEENS1_12fnref_detail11qual_fn_sigISP_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_while_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbNDTcl4implISI_EEE4typeEENS1_12fnref_detail11qual_fn_sigISQ_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_NS1_12function_refIFbNDTcl4implISN_EEE4typeEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_while_code_unitINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_while_code_unitINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbNDTcl4implISD_EEE4typeEENS1_12fnref_detail11qual_fn_sigISL_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_while_code_unitINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_NS1_12function_refIFbNDTcl4implISA_EEE4typeEENS1_12fnref_detail11qual_fn_sigISI_E8functionEEE
_ZN3scn2v34impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NS1_12function_refIFbNDTcl4implISK_EEE4typeEENS1_12fnref_detail11qual_fn_sigISS_E8functionEEE
Line
Count
Source
1975
1.06k
{
1976
1.06k
    return read_until_code_unit(range, std::not_fn(pred));
1977
1.06k
}
_ZN3scn2v34impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Line
Count
Source
1975
2.41k
{
1976
2.41k
    return read_until_code_unit(range, std::not_fn(pred));
1977
2.41k
}
_ZN3scn2v34impl20read_while_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbNDTcl4implISE_EEE4typeEENS1_12fnref_detail11qual_fn_sigISM_E8functionEEE
Line
Count
Source
1975
272
{
1976
272
    return read_until_code_unit(range, std::not_fn(pred));
1977
272
}
Unexecuted instantiation: _ZN3scn2v34impl20read_while_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbNDTcl4implISH_EEE4typeEENS1_12fnref_detail11qual_fn_sigISP_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_while_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbNDTcl4implISI_EEE4typeEENS1_12fnref_detail11qual_fn_sigISQ_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_NS1_12function_refIFbNDTcl4implISN_EEE4typeEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_while_code_unitINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_while_code_unitINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbNDTcl4implISD_EEE4typeEENS1_12fnref_detail11qual_fn_sigISL_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_while_code_unitINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_NS1_12function_refIFbNDTcl4implISA_EEE4typeEENS1_12fnref_detail11qual_fn_sigISI_E8functionEEE
_ZN3scn2v34impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NS1_12function_refIFbNDTcl4implISK_EEE4typeEENS1_12fnref_detail11qual_fn_sigISS_E8functionEEE
Line
Count
Source
1975
564
{
1976
564
    return read_until_code_unit(range, std::not_fn(pred));
1977
564
}
_ZN3scn2v34impl20read_while_code_unitINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbNDTcl4implISC_EEE4typeEENS1_12fnref_detail11qual_fn_sigISK_E8functionEEE
Line
Count
Source
1975
488
{
1976
488
    return read_until_code_unit(range, std::not_fn(pred));
1977
488
}
_ZN3scn2v34impl20read_while_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbNDTcl4implISE_EEE4typeEENS1_12fnref_detail11qual_fn_sigISM_E8functionEEE
Line
Count
Source
1975
88
{
1976
88
    return read_until_code_unit(range, std::not_fn(pred));
1977
88
}
_ZN3scn2v34impl20read_while_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Line
Count
Source
1975
482
{
1976
482
    return read_until_code_unit(range, std::not_fn(pred));
1977
482
}
_ZN3scn2v34impl20read_while_code_unitINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbNDTcl4implISF_EEE4typeEENS1_12fnref_detail11qual_fn_sigISN_E8functionEEE
Line
Count
Source
1975
234
{
1976
234
    return read_until_code_unit(range, std::not_fn(pred));
1977
234
}
1978
1979
template <typename Range>
1980
auto read_until1_code_unit(Range range,
1981
                           function_ref<bool(detail::char_t<Range>)> pred)
1982
    -> parse_expected<ranges::const_iterator_t<Range>>
1983
{
1984
    auto it = read_until_code_unit(range, pred);
1985
    if (it == range.begin()) {
1986
        return unexpected(parse_error::error);
1987
    }
1988
    return it;
1989
}
1990
1991
template <typename Range>
1992
auto read_while1_code_unit(Range range,
1993
                           function_ref<bool(detail::char_t<Range>)> pred)
1994
    -> parse_expected<ranges::const_iterator_t<Range>>
1995
1.66k
{
1996
1.66k
    auto it = read_while_code_unit(range, pred);
1997
1.66k
    if (it == range.begin()) {
1998
1.66k
        return unexpected(parse_error::error);
1999
1.66k
    }
2000
0
    return it;
2001
1.66k
}
Unexecuted instantiation: _ZN3scn2v34impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS1_12function_refIFbNDTcl4implISO_EEE4typeEENS1_12fnref_detail11qual_fn_sigISX_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NS1_12function_refIFbNDTcl4implISG_EEE4typeEENS1_12fnref_detail11qual_fn_sigISP_E8functionEEE
_ZN3scn2v34impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS1_12function_refIFbNDTcl4implISL_EEE4typeEENS1_12fnref_detail11qual_fn_sigISU_E8functionEEE
Line
Count
Source
1995
1.06k
{
1996
1.06k
    auto it = read_while_code_unit(range, pred);
1997
1.06k
    if (it == range.begin()) {
1998
1.06k
        return unexpected(parse_error::error);
1999
1.06k
    }
2000
0
    return it;
2001
1.06k
}
_ZN3scn2v34impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NS1_12function_refIFbNDTcl4implISD_EEE4typeEENS1_12fnref_detail11qual_fn_sigISM_E8functionEEE
Line
Count
Source
1995
26
{
1996
26
    auto it = read_while_code_unit(range, pred);
1997
26
    if (it == range.begin()) {
1998
26
        return unexpected(parse_error::error);
1999
26
    }
2000
0
    return it;
2001
26
}
Unexecuted instantiation: _ZN3scn2v34impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NS1_12function_refIFbNDTcl4implISO_EEE4typeEENS1_12fnref_detail11qual_fn_sigISX_E8functionEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NS1_12function_refIFbNDTcl4implISG_EEE4typeEENS1_12fnref_detail11qual_fn_sigISP_E8functionEEE
_ZN3scn2v34impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NS1_12function_refIFbNDTcl4implISL_EEE4typeEENS1_12fnref_detail11qual_fn_sigISU_E8functionEEE
Line
Count
Source
1995
564
{
1996
564
    auto it = read_while_code_unit(range, pred);
1997
564
    if (it == range.begin()) {
1998
564
        return unexpected(parse_error::error);
1999
564
    }
2000
0
    return it;
2001
564
}
_ZN3scn2v34impl21read_while1_code_unitINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NS1_12function_refIFbNDTcl4implISD_EEE4typeEENS1_12fnref_detail11qual_fn_sigISM_E8functionEEE
Line
Count
Source
1995
6
{
1996
6
    auto it = read_while_code_unit(range, pred);
1997
6
    if (it == range.begin()) {
1998
6
        return unexpected(parse_error::error);
1999
6
    }
2000
0
    return it;
2001
6
}
2002
2003
template <typename Range, typename CodeUnits>
2004
auto read_until_code_units(Range range, const CodeUnits& needle)
2005
    -> ranges::const_iterator_t<Range>
2006
168
{
2007
168
    static_assert(ranges::common_range<CodeUnits>);
2008
2009
168
    if constexpr (ranges::common_range<Range>) {
2010
78
        return std::search(range.begin(), range.end(), needle.begin(),
2011
78
                           needle.end());
2012
    }
2013
90
    else {
2014
90
        auto first = range.begin();
2015
576
        while (true) {
2016
576
            auto it = first;
2017
750
            for (auto needle_it = needle.begin();; ++it, (void)++needle_it) {
2018
750
                if (needle_it == needle.end()) {
2019
54
                    return first;
2020
54
                }
2021
696
                if (it == range.end()) {
2022
36
                    return it;
2023
36
                }
2024
660
                if (*it != *needle_it) {
2025
486
                    break;
2026
486
                }
2027
660
            }
2028
486
            ++first;
2029
486
        }
2030
90
    }
2031
168
}
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEESL_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_unitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESJ_RKT0_
_ZN3scn2v34impl21read_until_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEESI_RKT0_
Line
Count
Source
2006
90
{
2007
90
    static_assert(ranges::common_range<CodeUnits>);
2008
2009
    if constexpr (ranges::common_range<Range>) {
2010
        return std::search(range.begin(), range.end(), needle.begin(),
2011
                           needle.end());
2012
    }
2013
90
    else {
2014
90
        auto first = range.begin();
2015
576
        while (true) {
2016
576
            auto it = first;
2017
750
            for (auto needle_it = needle.begin();; ++it, (void)++needle_it) {
2018
750
                if (needle_it == needle.end()) {
2019
54
                    return first;
2020
54
                }
2021
696
                if (it == range.end()) {
2022
36
                    return it;
2023
36
                }
2024
660
                if (*it != *needle_it) {
2025
486
                    break;
2026
486
                }
2027
660
            }
2028
486
            ++first;
2029
486
        }
2030
90
    }
2031
90
}
_ZN3scn2v34impl21read_until_code_unitsINS0_6ranges6detail9subrange_8subrangeIPKcS8_EENSt3__117basic_string_viewIcNSA_11char_traitsIcEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEESG_RKT0_
Line
Count
Source
2006
78
{
2007
78
    static_assert(ranges::common_range<CodeUnits>);
2008
2009
78
    if constexpr (ranges::common_range<Range>) {
2010
78
        return std::search(range.begin(), range.end(), needle.begin(),
2011
78
                           needle.end());
2012
    }
2013
    else {
2014
        auto first = range.begin();
2015
        while (true) {
2016
            auto it = first;
2017
            for (auto needle_it = needle.begin();; ++it, (void)++needle_it) {
2018
                if (needle_it == needle.end()) {
2019
                    return first;
2020
                }
2021
                if (it == range.end()) {
2022
                    return it;
2023
                }
2024
                if (*it != *needle_it) {
2025
                    break;
2026
                }
2027
            }
2028
            ++first;
2029
        }
2030
    }
2031
78
}
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEESL_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_unitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESJ_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEESI_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_unitsINS0_6ranges6detail9subrange_8subrangeIPKwS8_EENSt3__117basic_string_viewIwNSA_11char_traitsIwEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEESG_RKT0_
2032
2033
template <typename Range, typename CodeUnits>
2034
auto read_while_code_units(Range range, const CodeUnits& needle)
2035
    -> ranges::const_iterator_t<Range>
2036
624
{
2037
624
    static_assert(ranges::common_range<CodeUnits>);
2038
2039
624
    auto it = range.begin();
2040
922
    while (it != range.end()) {
2041
886
        auto r = read_exactly_n_code_units(ranges::subrange{it, range.end()},
2042
886
                                           needle.size());
2043
886
        if (!r) {
2044
86
            return it;
2045
86
        }
2046
800
        static_assert(
2047
800
            std::is_same_v<decltype(it), detail::remove_cvref_t<decltype(*r)>>);
2048
800
        if (!std::equal(it, *r, needle.begin())) {
2049
502
            return it;
2050
502
        }
2051
298
        it = *r;
2052
298
    }
2053
36
    SCN_ENSURE(it == range.end());
2054
36
    return it;
2055
36
}
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEESL_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_unitsINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENSt3__117basic_string_viewIcNSG_11char_traitsIcEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSG_9add_constIT_E4typeEEEEESM_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_unitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESJ_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_unitsINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEES8_EEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_unitsINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEES8_EEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_unitsINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEES7_EEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_RKT0_
_ZN3scn2v34impl21read_while_code_unitsINS0_6ranges6detail9subrange_8subrangeIPKcS8_EENSt3__117basic_string_viewIcNSA_11char_traitsIcEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEESG_RKT0_
Line
Count
Source
2036
200
{
2037
200
    static_assert(ranges::common_range<CodeUnits>);
2038
2039
200
    auto it = range.begin();
2040
352
    while (it != range.end()) {
2041
352
        auto r = read_exactly_n_code_units(ranges::subrange{it, range.end()},
2042
352
                                           needle.size());
2043
352
        if (!r) {
2044
6
            return it;
2045
6
        }
2046
346
        static_assert(
2047
346
            std::is_same_v<decltype(it), detail::remove_cvref_t<decltype(*r)>>);
2048
346
        if (!std::equal(it, *r, needle.begin())) {
2049
194
            return it;
2050
194
        }
2051
152
        it = *r;
2052
152
    }
2053
0
    SCN_ENSURE(it == range.end());
2054
0
    return it;
2055
0
}
_ZN3scn2v34impl21read_while_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEESI_RKT0_
Line
Count
Source
2036
178
{
2037
178
    static_assert(ranges::common_range<CodeUnits>);
2038
2039
178
    auto it = range.begin();
2040
324
    while (it != range.end()) {
2041
288
        auto r = read_exactly_n_code_units(ranges::subrange{it, range.end()},
2042
288
                                           needle.size());
2043
288
        if (!r) {
2044
28
            return it;
2045
28
        }
2046
260
        static_assert(
2047
260
            std::is_same_v<decltype(it), detail::remove_cvref_t<decltype(*r)>>);
2048
260
        if (!std::equal(it, *r, needle.begin())) {
2049
114
            return it;
2050
114
        }
2051
146
        it = *r;
2052
146
    }
2053
36
    SCN_ENSURE(it == range.end());
2054
36
    return it;
2055
36
}
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEESL_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_unitsINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENSt3__117basic_string_viewIwNSG_11char_traitsIwEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSG_9add_constIT_E4typeEEEEESM_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_unitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESJ_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_unitsINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEES8_EEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_unitsINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEES8_EEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_unitsINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEES7_EEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_unitsINS0_6ranges6detail9subrange_8subrangeIPKwS8_EENSt3__117basic_string_viewIwNSA_11char_traitsIwEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEESG_RKT0_
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_unitsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEESI_RKT0_
_ZN3scn2v34impl21read_while_code_unitsINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENSt3__117basic_string_viewIcNSD_11char_traitsIcEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESJ_RKT0_
Line
Count
Source
2036
246
{
2037
246
    static_assert(ranges::common_range<CodeUnits>);
2038
2039
246
    auto it = range.begin();
2040
246
    while (it != range.end()) {
2041
246
        auto r = read_exactly_n_code_units(ranges::subrange{it, range.end()},
2042
246
                                           needle.size());
2043
246
        if (!r) {
2044
52
            return it;
2045
52
        }
2046
194
        static_assert(
2047
194
            std::is_same_v<decltype(it), detail::remove_cvref_t<decltype(*r)>>);
2048
194
        if (!std::equal(it, *r, needle.begin())) {
2049
194
            return it;
2050
194
        }
2051
0
        it = *r;
2052
0
    }
2053
0
    SCN_ENSURE(it == range.end());
2054
0
    return it;
2055
0
}
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_unitsINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENSt3__117basic_string_viewIwNSD_11char_traitsIwEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEESJ_RKT0_
2056
2057
template <typename Range>
2058
auto read_until_code_point(Range range, function_ref<bool(char32_t)> pred)
2059
    -> ranges::const_iterator_t<Range>
2060
161k
{
2061
161k
    auto it = range.begin();
2062
769k
    while (it != range.end()) {
2063
764k
        const auto val =
2064
764k
            read_code_point_into(ranges::subrange{it, range.end()});
2065
764k
        if (SCN_LIKELY(val.is_valid())) {
2066
759k
            const auto cp = detail::decode_code_point_exhaustive(
2067
759k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2068
759k
            if (pred(cp)) {
2069
156k
                return it;
2070
156k
            }
2071
759k
        }
2072
608k
        it = val.iterator;
2073
608k
    }
2074
2075
5.49k
    return it;
2076
161k
}
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbDiESO_EE
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbDiESN_EE
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_pointINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbDiESJ_EE
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_pointINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
_ZN3scn2v34impl21read_until_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbDiESK_EE
Line
Count
Source
2060
840
{
2061
840
    auto it = range.begin();
2062
18.4k
    while (it != range.end()) {
2063
18.2k
        const auto val =
2064
18.2k
            read_code_point_into(ranges::subrange{it, range.end()});
2065
18.2k
        if (SCN_LIKELY(val.is_valid())) {
2066
16.4k
            const auto cp = detail::decode_code_point_exhaustive(
2067
16.4k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2068
16.4k
            if (pred(cp)) {
2069
598
                return it;
2070
598
            }
2071
16.4k
        }
2072
17.6k
        it = val.iterator;
2073
17.6k
    }
2074
2075
242
    return it;
2076
840
}
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_NS1_12function_refIFbDiEST_EE
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
_ZN3scn2v34impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NS1_12function_refIFbDiESQ_EE
Line
Count
Source
2060
732
{
2061
732
    auto it = range.begin();
2062
9.43k
    while (it != range.end()) {
2063
8.88k
        const auto val =
2064
8.88k
            read_code_point_into(ranges::subrange{it, range.end()});
2065
8.88k
        if (SCN_LIKELY(val.is_valid())) {
2066
7.66k
            const auto cp = detail::decode_code_point_exhaustive(
2067
7.66k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2068
7.66k
            if (pred(cp)) {
2069
180
                return it;
2070
180
            }
2071
7.66k
        }
2072
8.70k
        it = val.iterator;
2073
8.70k
    }
2074
2075
552
    return it;
2076
732
}
_ZN3scn2v34impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
Line
Count
Source
2060
2.71k
{
2061
2.71k
    auto it = range.begin();
2062
372k
    while (it != range.end()) {
2063
372k
        const auto val =
2064
372k
            read_code_point_into(ranges::subrange{it, range.end()});
2065
372k
        if (SCN_LIKELY(val.is_valid())) {
2066
370k
            const auto cp = detail::decode_code_point_exhaustive(
2067
370k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2068
370k
            if (pred(cp)) {
2069
2.53k
                return it;
2070
2.53k
            }
2071
370k
        }
2072
369k
        it = val.iterator;
2073
369k
    }
2074
2075
186
    return it;
2076
2.71k
}
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbDiESO_EE
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbDiESN_EE
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_pointINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbDiESJ_EE
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_pointINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
_ZN3scn2v34impl21read_until_code_pointINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_NS1_12function_refIFbDiESG_EE
Line
Count
Source
2060
2.57k
{
2061
2.57k
    auto it = range.begin();
2062
4.41k
    while (it != range.end()) {
2063
3.38k
        const auto val =
2064
3.38k
            read_code_point_into(ranges::subrange{it, range.end()});
2065
3.38k
        if (SCN_LIKELY(val.is_valid())) {
2066
3.38k
            const auto cp = detail::decode_code_point_exhaustive(
2067
3.38k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2068
3.38k
            if (pred(cp)) {
2069
1.53k
                return it;
2070
1.53k
            }
2071
3.38k
        }
2072
1.84k
        it = val.iterator;
2073
1.84k
    }
2074
2075
1.03k
    return it;
2076
2.57k
}
_ZN3scn2v34impl21read_until_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbDiESK_EE
Line
Count
Source
2060
332
{
2061
332
    auto it = range.begin();
2062
968
    while (it != range.end()) {
2063
926
        const auto val =
2064
926
            read_code_point_into(ranges::subrange{it, range.end()});
2065
926
        if (SCN_LIKELY(val.is_valid())) {
2066
926
            const auto cp = detail::decode_code_point_exhaustive(
2067
926
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2068
926
            if (pred(cp)) {
2069
290
                return it;
2070
290
            }
2071
926
        }
2072
636
        it = val.iterator;
2073
636
    }
2074
2075
42
    return it;
2076
332
}
_ZN3scn2v34impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
Line
Count
Source
2060
151k
{
2061
151k
    auto it = range.begin();
2062
349k
    while (it != range.end()) {
2063
346k
        const auto val =
2064
346k
            read_code_point_into(ranges::subrange{it, range.end()});
2065
346k
        if (SCN_LIKELY(val.is_valid())) {
2066
346k
            const auto cp = detail::decode_code_point_exhaustive(
2067
346k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2068
346k
            if (pred(cp)) {
2069
148k
                return it;
2070
148k
            }
2071
346k
        }
2072
198k
        it = val.iterator;
2073
198k
    }
2074
2075
2.93k
    return it;
2076
151k
}
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESN_NS1_12function_refIFbDiEST_EE
Unexecuted instantiation: _ZN3scn2v34impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
_ZN3scn2v34impl21read_until_code_pointINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESK_NS1_12function_refIFbDiESQ_EE
Line
Count
Source
2060
372
{
2061
372
    auto it = range.begin();
2062
10.5k
    while (it != range.end()) {
2063
10.2k
        const auto val =
2064
10.2k
            read_code_point_into(ranges::subrange{it, range.end()});
2065
10.2k
        if (SCN_LIKELY(val.is_valid())) {
2066
10.2k
            const auto cp = detail::decode_code_point_exhaustive(
2067
10.2k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2068
10.2k
            if (pred(cp)) {
2069
48
                return it;
2070
48
            }
2071
10.2k
        }
2072
10.1k
        it = val.iterator;
2073
10.1k
    }
2074
2075
324
    return it;
2076
372
}
_ZN3scn2v34impl21read_until_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
Line
Count
Source
2060
1.94k
{
2061
1.94k
    auto it = range.begin();
2062
3.19k
    while (it != range.end()) {
2063
3.01k
        const auto val =
2064
3.01k
            read_code_point_into(ranges::subrange{it, range.end()});
2065
3.01k
        if (SCN_LIKELY(val.is_valid())) {
2066
3.01k
            const auto cp = detail::decode_code_point_exhaustive(
2067
3.01k
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2068
3.01k
            if (pred(cp)) {
2069
1.76k
                return it;
2070
1.76k
            }
2071
3.01k
        }
2072
1.24k
        it = val.iterator;
2073
1.24k
    }
2074
2075
174
    return it;
2076
1.94k
}
_ZN3scn2v34impl21read_until_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
Line
Count
Source
2060
970
{
2061
970
    auto it = range.begin();
2062
970
    while (it != range.end()) {
2063
970
        const auto val =
2064
970
            read_code_point_into(ranges::subrange{it, range.end()});
2065
970
        if (SCN_LIKELY(val.is_valid())) {
2066
970
            const auto cp = detail::decode_code_point_exhaustive(
2067
970
                std::basic_string_view<detail::char_t<Range>>{val.codepoint});
2068
970
            if (pred(cp)) {
2069
970
                return it;
2070
970
            }
2071
970
        }
2072
0
        it = val.iterator;
2073
0
    }
2074
2075
0
    return it;
2076
970
}
2077
2078
template <typename Range>
2079
auto read_while_code_point(Range range, function_ref<bool(char32_t)> pred)
2080
    -> ranges::const_iterator_t<Range>
2081
119k
{
2082
119k
    return read_until_code_point(range, std::not_fn(pred));
2083
119k
}
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbDiESO_EE
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbDiESN_EE
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_pointINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbDiESJ_EE
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_pointINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
_ZN3scn2v34impl21read_while_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbDiESK_EE
Line
Count
Source
2081
708
{
2082
708
    return read_until_code_point(range, std::not_fn(pred));
2083
708
}
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_pointINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
_ZN3scn2v34impl21read_while_code_pointINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
Line
Count
Source
2081
2.51k
{
2082
2.51k
    return read_until_code_point(range, std::not_fn(pred));
2083
2.51k
}
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_NS1_12function_refIFbDiESO_EE
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NS1_12function_refIFbDiESN_EE
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_pointINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_NS1_12function_refIFbDiESJ_EE
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_pointINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
_ZN3scn2v34impl21read_while_code_pointINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_NS1_12function_refIFbDiESG_EE
Line
Count
Source
2081
2.57k
{
2082
2.57k
    return read_until_code_point(range, std::not_fn(pred));
2083
2.57k
}
_ZN3scn2v34impl21read_while_code_pointINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NS1_12function_refIFbDiESK_EE
Line
Count
Source
2081
230
{
2082
230
    return read_until_code_point(range, std::not_fn(pred));
2083
230
}
_ZN3scn2v34impl21read_while_code_pointINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_NS1_12function_refIFbDiESI_EE
Line
Count
Source
2081
110k
{
2082
110k
    return read_until_code_point(range, std::not_fn(pred));
2083
110k
}
Unexecuted instantiation: _ZN3scn2v34impl21read_while_code_pointINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
_ZN3scn2v34impl21read_while_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
Line
Count
Source
2081
1.94k
{
2082
1.94k
    return read_until_code_point(range, std::not_fn(pred));
2083
1.94k
}
_ZN3scn2v34impl21read_while_code_pointINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_NS1_12function_refIFbDiESL_EE
Line
Count
Source
2081
970
{
2082
970
    return read_until_code_point(range, std::not_fn(pred));
2083
970
}
2084
2085
template <typename Range>
2086
auto read_until_classic_space(Range range) -> ranges::const_iterator_t<Range>
2087
44.2k
{
2088
    if constexpr (ranges::contiguous_range<Range> &&
2089
                  ranges::sized_range<Range> &&
2090
2.83k
                  std::is_same_v<detail::char_t<Range>, char>) {
2091
2.83k
        auto buf = make_contiguous_buffer(range);
2092
2.83k
        auto it = find_classic_space_narrow_fast(buf.view());
2093
2.83k
        return ranges::next(range.begin(),
2094
2.83k
                            ranges::distance(buf.view().begin(), it));
2095
    }
2096
41.3k
    else {
2097
41.3k
        auto it = range.begin();
2098
2099
41.3k
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2100
732
            auto seg = get_contiguous_beginning(range);
2101
732
            if (auto seg_it = find_classic_space_narrow_fast(seg);
2102
732
                seg_it != seg.end()) {
2103
0
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2104
0
            }
2105
732
            ranges::advance(it, seg.size());
2106
732
        }
2107
2108
0
        return read_until_code_point(
2109
41.3k
            ranges::subrange{it, range.end()},
2110
246k
            [](char32_t cp) noexcept { return is_cp_space(cp); });
Unexecuted instantiation: _ZZN3scn2v34impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v34impl24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_ENKUlDiE_clEDi
_ZZN3scn2v34impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_ENKUlDiE_clEDi
Line
Count
Source
2110
7.66k
            [](char32_t cp) noexcept { return is_cp_space(cp); });
Unexecuted instantiation: _ZZN3scn2v34impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v34impl24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_ENKUlDiE_clEDi
_ZZN3scn2v34impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_ENKUlDiE_clEDi
Line
Count
Source
2110
10.2k
            [](char32_t cp) noexcept { return is_cp_space(cp); });
_ZZN3scn2v34impl24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_ENKUlDiE_clEDi
Line
Count
Source
2110
228k
            [](char32_t cp) noexcept { return is_cp_space(cp); });
Unexecuted instantiation: _ZZN3scn2v34impl24read_until_classic_spaceINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_ENKUlDiE_clEDi
2111
41.3k
    }
2112
44.2k
}
Unexecuted instantiation: _ZN3scn2v34impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_
Unexecuted instantiation: _ZN3scn2v34impl24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
_ZN3scn2v34impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_
Line
Count
Source
2087
732
{
2088
    if constexpr (ranges::contiguous_range<Range> &&
2089
                  ranges::sized_range<Range> &&
2090
                  std::is_same_v<detail::char_t<Range>, char>) {
2091
        auto buf = make_contiguous_buffer(range);
2092
        auto it = find_classic_space_narrow_fast(buf.view());
2093
        return ranges::next(range.begin(),
2094
                            ranges::distance(buf.view().begin(), it));
2095
    }
2096
732
    else {
2097
732
        auto it = range.begin();
2098
2099
732
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2100
732
            auto seg = get_contiguous_beginning(range);
2101
732
            if (auto seg_it = find_classic_space_narrow_fast(seg);
2102
732
                seg_it != seg.end()) {
2103
0
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2104
0
            }
2105
732
            ranges::advance(it, seg.size());
2106
732
        }
2107
2108
0
        return read_until_code_point(
2109
732
            ranges::subrange{it, range.end()},
2110
732
            [](char32_t cp) noexcept { return is_cp_space(cp); });
2111
732
    }
2112
732
}
_ZN3scn2v34impl24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Line
Count
Source
2087
2.83k
{
2088
    if constexpr (ranges::contiguous_range<Range> &&
2089
                  ranges::sized_range<Range> &&
2090
2.83k
                  std::is_same_v<detail::char_t<Range>, char>) {
2091
2.83k
        auto buf = make_contiguous_buffer(range);
2092
2.83k
        auto it = find_classic_space_narrow_fast(buf.view());
2093
2.83k
        return ranges::next(range.begin(),
2094
2.83k
                            ranges::distance(buf.view().begin(), it));
2095
    }
2096
    else {
2097
        auto it = range.begin();
2098
2099
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2100
            auto seg = get_contiguous_beginning(range);
2101
            if (auto seg_it = find_classic_space_narrow_fast(seg);
2102
                seg_it != seg.end()) {
2103
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2104
            }
2105
            ranges::advance(it, seg.size());
2106
        }
2107
2108
        return read_until_code_point(
2109
            ranges::subrange{it, range.end()},
2110
            [](char32_t cp) noexcept { return is_cp_space(cp); });
2111
    }
2112
2.83k
}
Unexecuted instantiation: _ZN3scn2v34impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_
Unexecuted instantiation: _ZN3scn2v34impl24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
_ZN3scn2v34impl24read_until_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_
Line
Count
Source
2087
372
{
2088
    if constexpr (ranges::contiguous_range<Range> &&
2089
                  ranges::sized_range<Range> &&
2090
                  std::is_same_v<detail::char_t<Range>, char>) {
2091
        auto buf = make_contiguous_buffer(range);
2092
        auto it = find_classic_space_narrow_fast(buf.view());
2093
        return ranges::next(range.begin(),
2094
                            ranges::distance(buf.view().begin(), it));
2095
    }
2096
372
    else {
2097
372
        auto it = range.begin();
2098
2099
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2100
            auto seg = get_contiguous_beginning(range);
2101
            if (auto seg_it = find_classic_space_narrow_fast(seg);
2102
                seg_it != seg.end()) {
2103
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2104
            }
2105
            ranges::advance(it, seg.size());
2106
        }
2107
2108
372
        return read_until_code_point(
2109
372
            ranges::subrange{it, range.end()},
2110
372
            [](char32_t cp) noexcept { return is_cp_space(cp); });
2111
372
    }
2112
372
}
_ZN3scn2v34impl24read_until_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Line
Count
Source
2087
40.2k
{
2088
    if constexpr (ranges::contiguous_range<Range> &&
2089
                  ranges::sized_range<Range> &&
2090
                  std::is_same_v<detail::char_t<Range>, char>) {
2091
        auto buf = make_contiguous_buffer(range);
2092
        auto it = find_classic_space_narrow_fast(buf.view());
2093
        return ranges::next(range.begin(),
2094
                            ranges::distance(buf.view().begin(), it));
2095
    }
2096
40.2k
    else {
2097
40.2k
        auto it = range.begin();
2098
2099
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2100
            auto seg = get_contiguous_beginning(range);
2101
            if (auto seg_it = find_classic_space_narrow_fast(seg);
2102
                seg_it != seg.end()) {
2103
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2104
            }
2105
            ranges::advance(it, seg.size());
2106
        }
2107
2108
40.2k
        return read_until_code_point(
2109
40.2k
            ranges::subrange{it, range.end()},
2110
40.2k
            [](char32_t cp) noexcept { return is_cp_space(cp); });
2111
40.2k
    }
2112
40.2k
}
Unexecuted instantiation: _ZN3scn2v34impl24read_until_classic_spaceINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_
Unexecuted instantiation: _ZN3scn2v34impl24read_until_classic_spaceINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_
2113
2114
template <typename Range>
2115
auto read_while_classic_space(Range range) -> ranges::const_iterator_t<Range>
2116
137k
{
2117
    if constexpr (ranges::contiguous_range<Range> &&
2118
                  ranges::sized_range<Range> &&
2119
20.3k
                  std::is_same_v<detail::char_t<Range>, char>) {
2120
20.3k
        auto buf = make_contiguous_buffer(range);
2121
20.3k
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2122
20.3k
        return ranges::next(range.begin(),
2123
20.3k
                            ranges::distance(buf.view().begin(), it));
2124
    }
2125
116k
    else {
2126
116k
        auto it = range.begin();
2127
2128
116k
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2129
2.42k
            auto seg = get_contiguous_beginning(range);
2130
2.42k
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2131
2.42k
                seg_it != seg.end()) {
2132
0
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2133
0
            }
2134
2.42k
            ranges::advance(it, seg.size());
2135
2.42k
        }
2136
2137
0
        return read_while_code_point(
2138
122k
            range, [](char32_t cp) noexcept { return is_cp_space(cp); });
Unexecuted instantiation: _ZZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_ENKUlDiE_clEDi
_ZZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_ENKUlDiE_clEDi
Line
Count
Source
2138
1.38k
            range, [](char32_t cp) noexcept { return is_cp_space(cp); });
Unexecuted instantiation: _ZZN3scn2v34impl24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_ENKUlDiE_clEDi
Unexecuted instantiation: _ZZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_ENKUlDiE_clEDi
_ZZN3scn2v34impl24read_while_classic_spaceINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_ENKUlDiE_clEDi
Line
Count
Source
2138
3.38k
            range, [](char32_t cp) noexcept { return is_cp_space(cp); });
_ZZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_ENKUlDiE_clEDi
Line
Count
Source
2138
248
            range, [](char32_t cp) noexcept { return is_cp_space(cp); });
_ZZN3scn2v34impl24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_ENKUlDiE_clEDi
Line
Count
Source
2138
113k
            range, [](char32_t cp) noexcept { return is_cp_space(cp); });
Unexecuted instantiation: _ZZN3scn2v34impl24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_ENKUlDiE_clEDi
_ZZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_ENKUlDiE_clEDi
Line
Count
Source
2138
3.01k
            range, [](char32_t cp) noexcept { return is_cp_space(cp); });
_ZZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_ENKUlDiE_clEDi
Line
Count
Source
2138
970
            range, [](char32_t cp) noexcept { return is_cp_space(cp); });
2139
116k
    }
2140
137k
}
Unexecuted instantiation: _ZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_
Unexecuted instantiation: _ZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_
Unexecuted instantiation: _ZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_
Unexecuted instantiation: _ZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_
_ZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_
Line
Count
Source
2116
480
{
2117
    if constexpr (ranges::contiguous_range<Range> &&
2118
                  ranges::sized_range<Range> &&
2119
                  std::is_same_v<detail::char_t<Range>, char>) {
2120
        auto buf = make_contiguous_buffer(range);
2121
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2122
        return ranges::next(range.begin(),
2123
                            ranges::distance(buf.view().begin(), it));
2124
    }
2125
480
    else {
2126
480
        auto it = range.begin();
2127
2128
480
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2129
480
            auto seg = get_contiguous_beginning(range);
2130
480
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2131
480
                seg_it != seg.end()) {
2132
0
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2133
0
            }
2134
480
            ranges::advance(it, seg.size());
2135
480
        }
2136
2137
0
        return read_while_code_point(
2138
480
            range, [](char32_t cp) noexcept { return is_cp_space(cp); });
2139
480
    }
2140
480
}
_ZN3scn2v34impl24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Line
Count
Source
2116
13.6k
{
2117
    if constexpr (ranges::contiguous_range<Range> &&
2118
                  ranges::sized_range<Range> &&
2119
13.6k
                  std::is_same_v<detail::char_t<Range>, char>) {
2120
13.6k
        auto buf = make_contiguous_buffer(range);
2121
13.6k
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2122
13.6k
        return ranges::next(range.begin(),
2123
13.6k
                            ranges::distance(buf.view().begin(), it));
2124
    }
2125
    else {
2126
        auto it = range.begin();
2127
2128
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2129
            auto seg = get_contiguous_beginning(range);
2130
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2131
                seg_it != seg.end()) {
2132
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2133
            }
2134
            ranges::advance(it, seg.size());
2135
        }
2136
2137
        return read_while_code_point(
2138
            range, [](char32_t cp) noexcept { return is_cp_space(cp); });
2139
    }
2140
13.6k
}
Unexecuted instantiation: _ZN3scn2v34impl24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
Unexecuted instantiation: _ZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESI_
Unexecuted instantiation: _ZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_
Unexecuted instantiation: _ZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESD_
Unexecuted instantiation: _ZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEESC_
_ZN3scn2v34impl24read_while_classic_spaceINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_
Line
Count
Source
2116
2.57k
{
2117
    if constexpr (ranges::contiguous_range<Range> &&
2118
                  ranges::sized_range<Range> &&
2119
                  std::is_same_v<detail::char_t<Range>, char>) {
2120
        auto buf = make_contiguous_buffer(range);
2121
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2122
        return ranges::next(range.begin(),
2123
                            ranges::distance(buf.view().begin(), it));
2124
    }
2125
2.57k
    else {
2126
2.57k
        auto it = range.begin();
2127
2128
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2129
            auto seg = get_contiguous_beginning(range);
2130
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2131
                seg_it != seg.end()) {
2132
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2133
            }
2134
            ranges::advance(it, seg.size());
2135
        }
2136
2137
2.57k
        return read_while_code_point(
2138
2.57k
            range, [](char32_t cp) noexcept { return is_cp_space(cp); });
2139
2.57k
    }
2140
2.57k
}
_ZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_
Line
Count
Source
2116
200
{
2117
    if constexpr (ranges::contiguous_range<Range> &&
2118
                  ranges::sized_range<Range> &&
2119
                  std::is_same_v<detail::char_t<Range>, char>) {
2120
        auto buf = make_contiguous_buffer(range);
2121
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2122
        return ranges::next(range.begin(),
2123
                            ranges::distance(buf.view().begin(), it));
2124
    }
2125
200
    else {
2126
200
        auto it = range.begin();
2127
2128
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2129
            auto seg = get_contiguous_beginning(range);
2130
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2131
                seg_it != seg.end()) {
2132
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2133
            }
2134
            ranges::advance(it, seg.size());
2135
        }
2136
2137
200
        return read_while_code_point(
2138
200
            range, [](char32_t cp) noexcept { return is_cp_space(cp); });
2139
200
    }
2140
200
}
_ZN3scn2v34impl24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESC_
Line
Count
Source
2116
110k
{
2117
    if constexpr (ranges::contiguous_range<Range> &&
2118
                  ranges::sized_range<Range> &&
2119
                  std::is_same_v<detail::char_t<Range>, char>) {
2120
        auto buf = make_contiguous_buffer(range);
2121
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2122
        return ranges::next(range.begin(),
2123
                            ranges::distance(buf.view().begin(), it));
2124
    }
2125
110k
    else {
2126
110k
        auto it = range.begin();
2127
2128
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2129
            auto seg = get_contiguous_beginning(range);
2130
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2131
                seg_it != seg.end()) {
2132
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2133
            }
2134
            ranges::advance(it, seg.size());
2135
        }
2136
2137
110k
        return read_while_code_point(
2138
110k
            range, [](char32_t cp) noexcept { return is_cp_space(cp); });
2139
110k
    }
2140
110k
}
Unexecuted instantiation: _ZN3scn2v34impl24read_while_classic_spaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
_ZN3scn2v34impl24read_while_classic_spaceINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEEDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEESA_
Line
Count
Source
2116
6.70k
{
2117
    if constexpr (ranges::contiguous_range<Range> &&
2118
                  ranges::sized_range<Range> &&
2119
6.70k
                  std::is_same_v<detail::char_t<Range>, char>) {
2120
6.70k
        auto buf = make_contiguous_buffer(range);
2121
6.70k
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2122
6.70k
        return ranges::next(range.begin(),
2123
6.70k
                            ranges::distance(buf.view().begin(), it));
2124
    }
2125
    else {
2126
        auto it = range.begin();
2127
2128
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2129
            auto seg = get_contiguous_beginning(range);
2130
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2131
                seg_it != seg.end()) {
2132
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2133
            }
2134
            ranges::advance(it, seg.size());
2135
        }
2136
2137
        return read_while_code_point(
2138
            range, [](char32_t cp) noexcept { return is_cp_space(cp); });
2139
    }
2140
6.70k
}
_ZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
Line
Count
Source
2116
1.94k
{
2117
    if constexpr (ranges::contiguous_range<Range> &&
2118
                  ranges::sized_range<Range> &&
2119
                  std::is_same_v<detail::char_t<Range>, char>) {
2120
        auto buf = make_contiguous_buffer(range);
2121
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2122
        return ranges::next(range.begin(),
2123
                            ranges::distance(buf.view().begin(), it));
2124
    }
2125
1.94k
    else {
2126
1.94k
        auto it = range.begin();
2127
2128
1.94k
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2129
1.94k
            auto seg = get_contiguous_beginning(range);
2130
1.94k
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2131
1.94k
                seg_it != seg.end()) {
2132
0
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2133
0
            }
2134
1.94k
            ranges::advance(it, seg.size());
2135
1.94k
        }
2136
2137
0
        return read_while_code_point(
2138
1.94k
            range, [](char32_t cp) noexcept { return is_cp_space(cp); });
2139
1.94k
    }
2140
1.94k
}
_ZN3scn2v34impl24read_while_classic_spaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEEEDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESF_
Line
Count
Source
2116
970
{
2117
    if constexpr (ranges::contiguous_range<Range> &&
2118
                  ranges::sized_range<Range> &&
2119
                  std::is_same_v<detail::char_t<Range>, char>) {
2120
        auto buf = make_contiguous_buffer(range);
2121
        auto it = find_classic_nonspace_narrow_fast(buf.view());
2122
        return ranges::next(range.begin(),
2123
                            ranges::distance(buf.view().begin(), it));
2124
    }
2125
970
    else {
2126
970
        auto it = range.begin();
2127
2128
        if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2129
            auto seg = get_contiguous_beginning(range);
2130
            if (auto seg_it = find_classic_nonspace_narrow_fast(seg);
2131
                seg_it != seg.end()) {
2132
                return ranges::next(it, ranges::distance(seg.begin(), seg_it));
2133
            }
2134
            ranges::advance(it, seg.size());
2135
        }
2136
2137
970
        return read_while_code_point(
2138
970
            range, [](char32_t cp) noexcept { return is_cp_space(cp); });
2139
970
    }
2140
970
}
2141
2142
template <typename Range>
2143
auto read_matching_code_unit(Range range, detail::char_t<Range> ch)
2144
    -> parse_expected<ranges::const_iterator_t<Range>>
2145
29.7k
{
2146
29.7k
    auto it = read_code_unit(range);
2147
29.7k
    if (SCN_UNLIKELY(!it)) {
2148
0
        return unexpected(make_eof_parse_error(it.error()));
2149
0
    }
2150
2151
29.7k
    if (SCN_UNLIKELY(*range.begin() !=
2152
29.7k
                     static_cast<detail::char_t<Range>>(ch))) {
2153
29.7k
        return unexpected(parse_error::error);
2154
29.7k
    }
2155
2156
0
    return *it;
2157
29.7k
}
Unexecuted instantiation: _ZN3scn2v34impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NDTcl4implISO_EEE4typeE
Unexecuted instantiation: _ZN3scn2v34impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NDTcl4implISG_EEE4typeE
_ZN3scn2v34impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NDTcl4implISL_EEE4typeE
Line
Count
Source
2145
34
{
2146
34
    auto it = read_code_unit(range);
2147
34
    if (SCN_UNLIKELY(!it)) {
2148
0
        return unexpected(make_eof_parse_error(it.error()));
2149
0
    }
2150
2151
34
    if (SCN_UNLIKELY(*range.begin() !=
2152
34
                     static_cast<detail::char_t<Range>>(ch))) {
2153
34
        return unexpected(parse_error::error);
2154
34
    }
2155
2156
0
    return *it;
2157
34
}
_ZN3scn2v34impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NDTcl4implISD_EEE4typeE
Line
Count
Source
2145
1.89k
{
2146
1.89k
    auto it = read_code_unit(range);
2147
1.89k
    if (SCN_UNLIKELY(!it)) {
2148
0
        return unexpected(make_eof_parse_error(it.error()));
2149
0
    }
2150
2151
1.89k
    if (SCN_UNLIKELY(*range.begin() !=
2152
1.89k
                     static_cast<detail::char_t<Range>>(ch))) {
2153
1.89k
        return unexpected(parse_error::error);
2154
1.89k
    }
2155
2156
0
    return *it;
2157
1.89k
}
Unexecuted instantiation: _ZN3scn2v34impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NDTcl4implISO_EEE4typeE
Unexecuted instantiation: _ZN3scn2v34impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NDTcl4implISG_EEE4typeE
_ZN3scn2v34impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NDTcl4implISL_EEE4typeE
Line
Count
Source
2145
38
{
2146
38
    auto it = read_code_unit(range);
2147
38
    if (SCN_UNLIKELY(!it)) {
2148
0
        return unexpected(make_eof_parse_error(it.error()));
2149
0
    }
2150
2151
38
    if (SCN_UNLIKELY(*range.begin() !=
2152
38
                     static_cast<detail::char_t<Range>>(ch))) {
2153
38
        return unexpected(parse_error::error);
2154
38
    }
2155
2156
0
    return *it;
2157
38
}
_ZN3scn2v34impl23read_matching_code_unitINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NDTcl4implISD_EEE4typeE
Line
Count
Source
2145
26.9k
{
2146
26.9k
    auto it = read_code_unit(range);
2147
26.9k
    if (SCN_UNLIKELY(!it)) {
2148
0
        return unexpected(make_eof_parse_error(it.error()));
2149
0
    }
2150
2151
26.9k
    if (SCN_UNLIKELY(*range.begin() !=
2152
26.9k
                     static_cast<detail::char_t<Range>>(ch))) {
2153
26.9k
        return unexpected(parse_error::error);
2154
26.9k
    }
2155
2156
0
    return *it;
2157
26.9k
}
_ZN3scn2v34impl23read_matching_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NDTcl4implISF_EEE4typeE
Line
Count
Source
2145
544
{
2146
544
    auto it = read_code_unit(range);
2147
544
    if (SCN_UNLIKELY(!it)) {
2148
0
        return unexpected(make_eof_parse_error(it.error()));
2149
0
    }
2150
2151
544
    if (SCN_UNLIKELY(*range.begin() !=
2152
544
                     static_cast<detail::char_t<Range>>(ch))) {
2153
544
        return unexpected(parse_error::error);
2154
544
    }
2155
2156
0
    return *it;
2157
544
}
Unexecuted instantiation: _ZN3scn2v34impl23read_matching_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NDTcl4implISI_EEE4typeE
_ZN3scn2v34impl23read_matching_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NDTcl4implISF_EEE4typeE
Line
Count
Source
2145
316
{
2146
316
    auto it = read_code_unit(range);
2147
316
    if (SCN_UNLIKELY(!it)) {
2148
0
        return unexpected(make_eof_parse_error(it.error()));
2149
0
    }
2150
2151
316
    if (SCN_UNLIKELY(*range.begin() !=
2152
316
                     static_cast<detail::char_t<Range>>(ch))) {
2153
316
        return unexpected(parse_error::error);
2154
316
    }
2155
2156
0
    return *it;
2157
316
}
Unexecuted instantiation: _ZN3scn2v34impl23read_matching_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NDTcl4implISI_EEE4typeE
2158
2159
template <typename Range>
2160
auto read_matching_code_point(Range range, char32_t cp)
2161
    -> parse_expected<ranges::const_iterator_t<Range>>
2162
{
2163
    auto val = read_code_point_into(range);
2164
    if (!val.is_valid()) {
2165
        return unexpected(parse_error::error);
2166
    }
2167
    auto decoded_cp = decode_code_point_exhaustive(val.codepoint);
2168
    if (SCN_UNLIKELY(cp != decoded_cp)) {
2169
        return unexpected(parse_error::error);
2170
    }
2171
    return val.iterator;
2172
}
2173
2174
template <typename Range>
2175
auto read_matching_string(Range range,
2176
                          std::basic_string_view<detail::char_t<Range>> str)
2177
    -> parse_expected<ranges::const_iterator_t<Range>>
2178
92
{
2179
92
    SCN_TRY(it, read_exactly_n_code_units(
2180
64
                    range, static_cast<std::ptrdiff_t>(str.size()))
2181
64
                    .transform_error(make_eof_parse_error));
2182
2183
64
    auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2184
64
    if (SCN_UNLIKELY(sv.view() != str)) {
2185
64
        return unexpected(parse_error::error);
2186
64
    }
2187
0
    return it;
2188
64
}
_ZN3scn2v34impl20read_matching_stringINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewINDTcl4implISF_EEE4typeENSD_11char_traitsISN_EEEE
Line
Count
Source
2178
24
{
2179
24
    SCN_TRY(it, read_exactly_n_code_units(
2180
14
                    range, static_cast<std::ptrdiff_t>(str.size()))
2181
14
                    .transform_error(make_eof_parse_error));
2182
2183
14
    auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2184
14
    if (SCN_UNLIKELY(sv.view() != str)) {
2185
14
        return unexpected(parse_error::error);
2186
14
    }
2187
0
    return it;
2188
14
}
_ZN3scn2v34impl20read_matching_stringINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewINDTcl4implISD_EEE4typeENSB_11char_traitsISL_EEEE
Line
Count
Source
2178
28
{
2179
28
    SCN_TRY(it, read_exactly_n_code_units(
2180
26
                    range, static_cast<std::ptrdiff_t>(str.size()))
2181
26
                    .transform_error(make_eof_parse_error));
2182
2183
26
    auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2184
26
    if (SCN_UNLIKELY(sv.view() != str)) {
2185
26
        return unexpected(parse_error::error);
2186
26
    }
2187
0
    return it;
2188
26
}
Unexecuted instantiation: _ZN3scn2v34impl20read_matching_stringINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewINDTcl4implISI_EEE4typeENSG_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_matching_stringINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewINDTcl4implISG_EEE4typeENSE_11char_traitsISO_EEEE
_ZN3scn2v34impl20read_matching_stringINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewINDTcl4implISF_EEE4typeENSD_11char_traitsISN_EEEE
Line
Count
Source
2178
20
{
2179
20
    SCN_TRY(it, read_exactly_n_code_units(
2180
6
                    range, static_cast<std::ptrdiff_t>(str.size()))
2181
6
                    .transform_error(make_eof_parse_error));
2182
2183
6
    auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2184
6
    if (SCN_UNLIKELY(sv.view() != str)) {
2185
6
        return unexpected(parse_error::error);
2186
6
    }
2187
0
    return it;
2188
6
}
_ZN3scn2v34impl20read_matching_stringINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewINDTcl4implISD_EEE4typeENSB_11char_traitsISL_EEEE
Line
Count
Source
2178
20
{
2179
20
    SCN_TRY(it, read_exactly_n_code_units(
2180
18
                    range, static_cast<std::ptrdiff_t>(str.size()))
2181
18
                    .transform_error(make_eof_parse_error));
2182
2183
18
    auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2184
18
    if (SCN_UNLIKELY(sv.view() != str)) {
2185
18
        return unexpected(parse_error::error);
2186
18
    }
2187
0
    return it;
2188
18
}
Unexecuted instantiation: _ZN3scn2v34impl20read_matching_stringINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewINDTcl4implISI_EEE4typeENSG_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v34impl20read_matching_stringINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewINDTcl4implISG_EEE4typeENSE_11char_traitsISO_EEEE
2189
2190
template <typename Range>
2191
auto read_matching_string_classic(Range range, std::string_view str)
2192
    -> parse_expected<ranges::const_iterator_t<Range>>
2193
29.8k
{
2194
29.8k
    SCN_TRY(it, read_exactly_n_code_units(
2195
29.4k
                    range, static_cast<std::ptrdiff_t>(str.size()))
2196
29.4k
                    .transform_error(make_eof_parse_error));
2197
2198
29.4k
    if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2199
2.39k
        auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2200
2.39k
        if (SCN_UNLIKELY(sv.view() != str)) {
2201
2.39k
            return unexpected(parse_error::error);
2202
2.39k
        }
2203
0
        return it;
2204
    }
2205
27.0k
    else {
2206
27.0k
        auto range_it = range.begin();
2207
27.0k
        for (size_t i = 0; i < str.size(); ++i, (void)++range_it) {
2208
27.0k
            if (SCN_UNLIKELY(*range_it !=
2209
27.0k
                             static_cast<detail::char_t<Range>>(str[i]))) {
2210
27.0k
                return unexpected(parse_error::error);
2211
27.0k
            }
2212
27.0k
        }
2213
0
        return it;
2214
27.0k
    }
2215
29.4k
}
_ZN3scn2v34impl28read_matching_string_classicINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewIcNSB_11char_traitsIcEEEE
Line
Count
Source
2193
2.00k
{
2194
2.00k
    SCN_TRY(it, read_exactly_n_code_units(
2195
1.90k
                    range, static_cast<std::ptrdiff_t>(str.size()))
2196
1.90k
                    .transform_error(make_eof_parse_error));
2197
2198
1.90k
    if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2199
1.90k
        auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2200
1.90k
        if (SCN_UNLIKELY(sv.view() != str)) {
2201
1.90k
            return unexpected(parse_error::error);
2202
1.90k
        }
2203
0
        return it;
2204
    }
2205
    else {
2206
        auto range_it = range.begin();
2207
        for (size_t i = 0; i < str.size(); ++i, (void)++range_it) {
2208
            if (SCN_UNLIKELY(*range_it !=
2209
                             static_cast<detail::char_t<Range>>(str[i]))) {
2210
                return unexpected(parse_error::error);
2211
            }
2212
        }
2213
        return it;
2214
    }
2215
1.90k
}
Unexecuted instantiation: _ZN3scn2v34impl28read_matching_string_classicINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEE
_ZN3scn2v34impl28read_matching_string_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEE
Line
Count
Source
2193
616
{
2194
616
    SCN_TRY(it, read_exactly_n_code_units(
2195
488
                    range, static_cast<std::ptrdiff_t>(str.size()))
2196
488
                    .transform_error(make_eof_parse_error));
2197
2198
488
    if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2199
488
        auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2200
488
        if (SCN_UNLIKELY(sv.view() != str)) {
2201
488
            return unexpected(parse_error::error);
2202
488
        }
2203
0
        return it;
2204
    }
2205
    else {
2206
        auto range_it = range.begin();
2207
        for (size_t i = 0; i < str.size(); ++i, (void)++range_it) {
2208
            if (SCN_UNLIKELY(*range_it !=
2209
                             static_cast<detail::char_t<Range>>(str[i]))) {
2210
                return unexpected(parse_error::error);
2211
            }
2212
        }
2213
        return it;
2214
    }
2215
488
}
Unexecuted instantiation: _ZN3scn2v34impl28read_matching_string_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEE
_ZN3scn2v34impl28read_matching_string_classicINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewIcNSB_11char_traitsIcEEEE
Line
Count
Source
2193
26.9k
{
2194
26.9k
    SCN_TRY(it, read_exactly_n_code_units(
2195
26.7k
                    range, static_cast<std::ptrdiff_t>(str.size()))
2196
26.7k
                    .transform_error(make_eof_parse_error));
2197
2198
    if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2199
        auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2200
        if (SCN_UNLIKELY(sv.view() != str)) {
2201
            return unexpected(parse_error::error);
2202
        }
2203
        return it;
2204
    }
2205
26.7k
    else {
2206
26.7k
        auto range_it = range.begin();
2207
26.7k
        for (size_t i = 0; i < str.size(); ++i, (void)++range_it) {
2208
26.7k
            if (SCN_UNLIKELY(*range_it !=
2209
26.7k
                             static_cast<detail::char_t<Range>>(str[i]))) {
2210
26.7k
                return unexpected(parse_error::error);
2211
26.7k
            }
2212
26.7k
        }
2213
0
        return it;
2214
26.7k
    }
2215
26.7k
}
_ZN3scn2v34impl28read_matching_string_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEE
Line
Count
Source
2193
288
{
2194
288
    SCN_TRY(it, read_exactly_n_code_units(
2195
240
                    range, static_cast<std::ptrdiff_t>(str.size()))
2196
240
                    .transform_error(make_eof_parse_error));
2197
2198
    if constexpr (std::is_same_v<detail::char_t<Range>, char>) {
2199
        auto sv = make_contiguous_buffer(ranges::subrange{range.begin(), it});
2200
        if (SCN_UNLIKELY(sv.view() != str)) {
2201
            return unexpected(parse_error::error);
2202
        }
2203
        return it;
2204
    }
2205
240
    else {
2206
240
        auto range_it = range.begin();
2207
240
        for (size_t i = 0; i < str.size(); ++i, (void)++range_it) {
2208
240
            if (SCN_UNLIKELY(*range_it !=
2209
240
                             static_cast<detail::char_t<Range>>(str[i]))) {
2210
240
                return unexpected(parse_error::error);
2211
240
            }
2212
240
        }
2213
0
        return it;
2214
240
    }
2215
240
}
Unexecuted instantiation: _ZN3scn2v34impl28read_matching_string_classicINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v34impl28read_matching_string_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEE
2216
2217
// Ripped from fast_float
2218
constexpr bool fast_streq_nocase(const char* a, const char* b, size_t len)
2219
3.71k
{
2220
3.71k
    unsigned char running_diff{0};
2221
12.9k
    for (size_t i = 0; i < len; ++i) {
2222
9.27k
        running_diff |= static_cast<unsigned char>(a[i] ^ b[i]);
2223
9.27k
    }
2224
3.71k
    return running_diff == 0 || running_diff == 32;
2225
3.71k
}
2226
2227
template <typename Range>
2228
auto read_matching_string_classic_nocase(Range range, std::string_view str)
2229
    -> parse_expected<ranges::const_iterator_t<Range>>
2230
59.2k
{
2231
59.2k
    using char_type = detail::char_t<Range>;
2232
2233
    if constexpr (ranges::contiguous_range<Range> &&
2234
3.72k
                  std::is_same_v<char_type, char>) {
2235
3.72k
        if (range.size() < str.size()) {
2236
8
            return unexpected(make_eof_parse_error(eof_error::eof));
2237
8
        }
2238
3.71k
        if (!fast_streq_nocase(range.data(), str.data(), str.size())) {
2239
3.71k
            return unexpected(parse_error::error);
2240
3.71k
        }
2241
0
        return ranges::next(range.begin(), str.size());
2242
    }
2243
55.5k
    else {
2244
55.5k
        auto ascii_tolower = [](char_type ch) -> char_type {
2245
55.2k
            if (ch < 'A' || ch > 'Z') {
2246
55.2k
                return ch;
2247
55.2k
            }
2248
0
            return static_cast<char_type>(ch +
2249
0
                                          static_cast<char_type>('a' - 'A'));
2250
55.2k
        };
Unexecuted instantiation: _ZZN3scn2v34impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NSM_17basic_string_viewIcNSM_11char_traitsIcEEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEEENKUlcE_clEc
_ZZN3scn2v34impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEENKUlcE_clEc
Line
Count
Source
2244
954
        auto ascii_tolower = [](char_type ch) -> char_type {
2245
954
            if (ch < 'A' || ch > 'Z') {
2246
954
                return ch;
2247
954
            }
2248
0
            return static_cast<char_type>(ch +
2249
0
                                          static_cast<char_type>('a' - 'A'));
2250
954
        };
Unexecuted instantiation: _ZZN3scn2v34impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NSM_17basic_string_viewIcNSM_11char_traitsIcEEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEEENKUlwE_clEw
_ZZN3scn2v34impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEEENKUlwE_clEw
Line
Count
Source
2244
546
        auto ascii_tolower = [](char_type ch) -> char_type {
2245
546
            if (ch < 'A' || ch > 'Z') {
2246
546
                return ch;
2247
546
            }
2248
0
            return static_cast<char_type>(ch +
2249
0
                                          static_cast<char_type>('a' - 'A'));
2250
546
        };
_ZZN3scn2v34impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewIcNSB_11char_traitsIcEEEEENKUlwE_clEw
Line
Count
Source
2244
53.7k
        auto ascii_tolower = [](char_type ch) -> char_type {
2245
53.7k
            if (ch < 'A' || ch > 'Z') {
2246
53.7k
                return ch;
2247
53.7k
            }
2248
0
            return static_cast<char_type>(ch +
2249
0
                                          static_cast<char_type>('a' - 'A'));
2250
53.7k
        };
2251
2252
55.5k
        SCN_TRY(it, read_exactly_n_code_units(
2253
55.2k
                        range, static_cast<std::ptrdiff_t>(str.size()))
2254
55.2k
                        .transform_error(make_eof_parse_error));
2255
2256
55.2k
        if (SCN_UNLIKELY(!std::equal(
2257
55.2k
                range.begin(), it, str.begin(), [&](auto a, auto b) {
2258
55.2k
                    return ascii_tolower(a) ==
2259
55.2k
                           static_cast<detail::char_t<Range>>(b);
2260
55.2k
                }))) {
2261
55.2k
            return unexpected(parse_error::error);
2262
55.2k
        }
2263
2264
0
        return it;
2265
55.2k
    }
2266
59.2k
}
Unexecuted instantiation: _ZN3scn2v34impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NSM_17basic_string_viewIcNSM_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v34impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEE
_ZN3scn2v34impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEE
Line
Count
Source
2230
1.13k
{
2231
1.13k
    using char_type = detail::char_t<Range>;
2232
2233
    if constexpr (ranges::contiguous_range<Range> &&
2234
                  std::is_same_v<char_type, char>) {
2235
        if (range.size() < str.size()) {
2236
            return unexpected(make_eof_parse_error(eof_error::eof));
2237
        }
2238
        if (!fast_streq_nocase(range.data(), str.data(), str.size())) {
2239
            return unexpected(parse_error::error);
2240
        }
2241
        return ranges::next(range.begin(), str.size());
2242
    }
2243
1.13k
    else {
2244
1.13k
        auto ascii_tolower = [](char_type ch) -> char_type {
2245
1.13k
            if (ch < 'A' || ch > 'Z') {
2246
1.13k
                return ch;
2247
1.13k
            }
2248
1.13k
            return static_cast<char_type>(ch +
2249
1.13k
                                          static_cast<char_type>('a' - 'A'));
2250
1.13k
        };
2251
2252
1.13k
        SCN_TRY(it, read_exactly_n_code_units(
2253
954
                        range, static_cast<std::ptrdiff_t>(str.size()))
2254
954
                        .transform_error(make_eof_parse_error));
2255
2256
954
        if (SCN_UNLIKELY(!std::equal(
2257
954
                range.begin(), it, str.begin(), [&](auto a, auto b) {
2258
954
                    return ascii_tolower(a) ==
2259
954
                           static_cast<detail::char_t<Range>>(b);
2260
954
                }))) {
2261
954
            return unexpected(parse_error::error);
2262
954
        }
2263
2264
0
        return it;
2265
954
    }
2266
1.13k
}
_ZN3scn2v34impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewIcNSB_11char_traitsIcEEEE
Line
Count
Source
2230
3.72k
{
2231
3.72k
    using char_type = detail::char_t<Range>;
2232
2233
    if constexpr (ranges::contiguous_range<Range> &&
2234
3.72k
                  std::is_same_v<char_type, char>) {
2235
3.72k
        if (range.size() < str.size()) {
2236
8
            return unexpected(make_eof_parse_error(eof_error::eof));
2237
8
        }
2238
3.71k
        if (!fast_streq_nocase(range.data(), str.data(), str.size())) {
2239
3.71k
            return unexpected(parse_error::error);
2240
3.71k
        }
2241
0
        return ranges::next(range.begin(), str.size());
2242
    }
2243
    else {
2244
        auto ascii_tolower = [](char_type ch) -> char_type {
2245
            if (ch < 'A' || ch > 'Z') {
2246
                return ch;
2247
            }
2248
            return static_cast<char_type>(ch +
2249
                                          static_cast<char_type>('a' - 'A'));
2250
        };
2251
2252
        SCN_TRY(it, read_exactly_n_code_units(
2253
                        range, static_cast<std::ptrdiff_t>(str.size()))
2254
                        .transform_error(make_eof_parse_error));
2255
2256
        if (SCN_UNLIKELY(!std::equal(
2257
                range.begin(), it, str.begin(), [&](auto a, auto b) {
2258
                    return ascii_tolower(a) ==
2259
                           static_cast<detail::char_t<Range>>(b);
2260
                }))) {
2261
            return unexpected(parse_error::error);
2262
        }
2263
2264
        return it;
2265
    }
2266
3.72k
}
Unexecuted instantiation: _ZN3scn2v34impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NSM_17basic_string_viewIcNSM_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v34impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEE
_ZN3scn2v34impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEE
Line
Count
Source
2230
638
{
2231
638
    using char_type = detail::char_t<Range>;
2232
2233
    if constexpr (ranges::contiguous_range<Range> &&
2234
                  std::is_same_v<char_type, char>) {
2235
        if (range.size() < str.size()) {
2236
            return unexpected(make_eof_parse_error(eof_error::eof));
2237
        }
2238
        if (!fast_streq_nocase(range.data(), str.data(), str.size())) {
2239
            return unexpected(parse_error::error);
2240
        }
2241
        return ranges::next(range.begin(), str.size());
2242
    }
2243
638
    else {
2244
638
        auto ascii_tolower = [](char_type ch) -> char_type {
2245
638
            if (ch < 'A' || ch > 'Z') {
2246
638
                return ch;
2247
638
            }
2248
638
            return static_cast<char_type>(ch +
2249
638
                                          static_cast<char_type>('a' - 'A'));
2250
638
        };
2251
2252
638
        SCN_TRY(it, read_exactly_n_code_units(
2253
546
                        range, static_cast<std::ptrdiff_t>(str.size()))
2254
546
                        .transform_error(make_eof_parse_error));
2255
2256
546
        if (SCN_UNLIKELY(!std::equal(
2257
546
                range.begin(), it, str.begin(), [&](auto a, auto b) {
2258
546
                    return ascii_tolower(a) ==
2259
546
                           static_cast<detail::char_t<Range>>(b);
2260
546
                }))) {
2261
546
            return unexpected(parse_error::error);
2262
546
        }
2263
2264
0
        return it;
2265
546
    }
2266
638
}
_ZN3scn2v34impl35read_matching_string_classic_nocaseINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewIcNSB_11char_traitsIcEEEE
Line
Count
Source
2230
53.7k
{
2231
53.7k
    using char_type = detail::char_t<Range>;
2232
2233
    if constexpr (ranges::contiguous_range<Range> &&
2234
                  std::is_same_v<char_type, char>) {
2235
        if (range.size() < str.size()) {
2236
            return unexpected(make_eof_parse_error(eof_error::eof));
2237
        }
2238
        if (!fast_streq_nocase(range.data(), str.data(), str.size())) {
2239
            return unexpected(parse_error::error);
2240
        }
2241
        return ranges::next(range.begin(), str.size());
2242
    }
2243
53.7k
    else {
2244
53.7k
        auto ascii_tolower = [](char_type ch) -> char_type {
2245
53.7k
            if (ch < 'A' || ch > 'Z') {
2246
53.7k
                return ch;
2247
53.7k
            }
2248
53.7k
            return static_cast<char_type>(ch +
2249
53.7k
                                          static_cast<char_type>('a' - 'A'));
2250
53.7k
        };
2251
2252
53.7k
        SCN_TRY(it, read_exactly_n_code_units(
2253
53.7k
                        range, static_cast<std::ptrdiff_t>(str.size()))
2254
53.7k
                        .transform_error(make_eof_parse_error));
2255
2256
53.7k
        if (SCN_UNLIKELY(!std::equal(
2257
53.7k
                range.begin(), it, str.begin(), [&](auto a, auto b) {
2258
53.7k
                    return ascii_tolower(a) ==
2259
53.7k
                           static_cast<detail::char_t<Range>>(b);
2260
53.7k
                }))) {
2261
53.7k
            return unexpected(parse_error::error);
2262
53.7k
        }
2263
2264
0
        return it;
2265
53.7k
    }
2266
53.7k
}
2267
2268
template <typename Range>
2269
auto read_one_of_code_unit(Range range, std::string_view str)
2270
    -> parse_expected<ranges::const_iterator_t<Range>>
2271
59.1k
{
2272
59.1k
    auto it = read_code_unit(range);
2273
59.1k
    if (SCN_UNLIKELY(!it)) {
2274
0
        return unexpected(make_eof_parse_error(it.error()));
2275
0
    }
2276
2277
118k
    for (auto ch : str) {
2278
118k
        if (*range.begin() == static_cast<detail::char_t<Range>>(ch)) {
2279
0
            return *it;
2280
0
        }
2281
118k
    }
2282
2283
59.1k
    return unexpected(parse_error::error);
2284
59.1k
}
Unexecuted instantiation: _ZN3scn2v34impl21read_one_of_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEE
_ZN3scn2v34impl21read_one_of_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEE
Line
Count
Source
2271
1.08k
{
2272
1.08k
    auto it = read_code_unit(range);
2273
1.08k
    if (SCN_UNLIKELY(!it)) {
2274
0
        return unexpected(make_eof_parse_error(it.error()));
2275
0
    }
2276
2277
2.16k
    for (auto ch : str) {
2278
2.16k
        if (*range.begin() == static_cast<detail::char_t<Range>>(ch)) {
2279
0
            return *it;
2280
0
        }
2281
2.16k
    }
2282
2283
1.08k
    return unexpected(parse_error::error);
2284
1.08k
}
_ZN3scn2v34impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewIcNSB_11char_traitsIcEEEE
Line
Count
Source
2271
3.67k
{
2272
3.67k
    auto it = read_code_unit(range);
2273
3.67k
    if (SCN_UNLIKELY(!it)) {
2274
0
        return unexpected(make_eof_parse_error(it.error()));
2275
0
    }
2276
2277
7.34k
    for (auto ch : str) {
2278
7.34k
        if (*range.begin() == static_cast<detail::char_t<Range>>(ch)) {
2279
0
            return *it;
2280
0
        }
2281
7.34k
    }
2282
2283
3.67k
    return unexpected(parse_error::error);
2284
3.67k
}
Unexecuted instantiation: _ZN3scn2v34impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NSM_17basic_string_viewIcNSM_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_one_of_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_NSE_17basic_string_viewIcNSE_11char_traitsIcEEEE
_ZN3scn2v34impl21read_one_of_code_unitINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_14parse_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEE
Line
Count
Source
2271
600
{
2272
600
    auto it = read_code_unit(range);
2273
600
    if (SCN_UNLIKELY(!it)) {
2274
0
        return unexpected(make_eof_parse_error(it.error()));
2275
0
    }
2276
2277
1.20k
    for (auto ch : str) {
2278
1.20k
        if (*range.begin() == static_cast<detail::char_t<Range>>(ch)) {
2279
0
            return *it;
2280
0
        }
2281
1.20k
    }
2282
2283
600
    return unexpected(parse_error::error);
2284
600
}
_ZN3scn2v34impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_NSB_17basic_string_viewIcNSB_11char_traitsIcEEEE
Line
Count
Source
2271
53.7k
{
2272
53.7k
    auto it = read_code_unit(range);
2273
53.7k
    if (SCN_UNLIKELY(!it)) {
2274
0
        return unexpected(make_eof_parse_error(it.error()));
2275
0
    }
2276
2277
107k
    for (auto ch : str) {
2278
107k
        if (*range.begin() == static_cast<detail::char_t<Range>>(ch)) {
2279
0
            return *it;
2280
0
        }
2281
107k
    }
2282
2283
53.7k
    return unexpected(parse_error::error);
2284
53.7k
}
Unexecuted instantiation: _ZN3scn2v34impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_NSM_17basic_string_viewIcNSM_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_one_of_code_unitINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_NSJ_17basic_string_viewIcNSJ_11char_traitsIcEEEE
2285
2286
template <typename Range, template <class> class Expected, typename Iterator>
2287
auto apply_opt(Expected<Iterator>&& result, Range range)
2288
    -> std::enable_if_t<detail::is_expected<Expected<Iterator>>::value,
2289
                        ranges::const_iterator_t<Range>>
2290
14.8k
{
2291
14.8k
    if (!result) {
2292
14.8k
        return range.begin();
2293
14.8k
    }
2294
0
    return *result;
2295
14.8k
}
Unexecuted instantiation: _ZN3scn2v34impl9apply_optINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENS1_14parse_expectedESE_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSM_9add_constIT_E4typeEEEEEE4typeEOSQ_SS_
Unexecuted instantiation: _ZN3scn2v34impl9apply_optINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_14parse_expectedESA_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEE4typeEOSI_SK_
_ZN3scn2v34impl9apply_optINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENS1_14parse_expectedESB_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSJ_9add_constIT_E4typeEEEEEE4typeEOSN_SP_
Line
Count
Source
2290
290
{
2291
290
    if (!result) {
2292
290
        return range.begin();
2293
290
    }
2294
0
    return *result;
2295
290
}
_ZN3scn2v34impl9apply_optINS0_6ranges6detail9subrange_8subrangeIPKcS8_EENS1_14parse_expectedES8_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSB_9add_constIT_E4typeEEEEEE4typeEOSF_SH_
Line
Count
Source
2290
938
{
2291
938
    if (!result) {
2292
938
        return range.begin();
2293
938
    }
2294
0
    return *result;
2295
938
}
Unexecuted instantiation: _ZN3scn2v34impl9apply_optINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEENS1_14parse_expectedESE_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSM_9add_constIT_E4typeEEEEEE4typeEOSQ_SS_
Unexecuted instantiation: _ZN3scn2v34impl9apply_optINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_14parse_expectedESA_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEE4typeEOSI_SK_
_ZN3scn2v34impl9apply_optINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEENS1_14parse_expectedESB_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSJ_9add_constIT_E4typeEEEEEE4typeEOSN_SP_
Line
Count
Source
2290
154
{
2291
154
    if (!result) {
2292
154
        return range.begin();
2293
154
    }
2294
0
    return *result;
2295
154
}
_ZN3scn2v34impl9apply_optINS0_6ranges6detail9subrange_8subrangeIPKwS8_EENS1_14parse_expectedES8_EENSt3__19enable_ifIXsr6detail11is_expectedIT0_IT1_EEE5valueEDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSB_9add_constIT_E4typeEEEEEE4typeEOSF_SH_
Line
Count
Source
2290
13.4k
{
2291
13.4k
    if (!result) {
2292
13.4k
        return range.begin();
2293
13.4k
    }
2294
0
    return *result;
2295
13.4k
}
2296
2297
/////////////////////////////////////////////////////////////////
2298
// Text width calculation
2299
/////////////////////////////////////////////////////////////////
2300
2301
constexpr std::size_t calculate_text_width_for_fmt_v10(char32_t cp)
2302
135k
{
2303
135k
    if (cp >= 0x1100 &&
2304
135k
        (cp <= 0x115f ||  // Hangul Jamo init. consonants
2305
27.0k
         cp == 0x2329 ||  // LEFT-POINTING ANGLE BRACKET
2306
27.0k
         cp == 0x232a ||  // RIGHT-POINTING ANGLE BRACKET
2307
         // CJK ... Yi except IDEOGRAPHIC HALF FILL SPACE:
2308
27.0k
         (cp >= 0x2e80 && cp <= 0xa4cf && cp != 0x303f) ||
2309
27.0k
         (cp >= 0xac00 && cp <= 0xd7a3) ||    // Hangul Syllables
2310
27.0k
         (cp >= 0xf900 && cp <= 0xfaff) ||    // CJK Compatibility Ideographs
2311
27.0k
         (cp >= 0xfe10 && cp <= 0xfe19) ||    // Vertical Forms
2312
27.0k
         (cp >= 0xfe30 && cp <= 0xfe6f) ||    // CJK Compatibility Forms
2313
27.0k
         (cp >= 0xff00 && cp <= 0xff60) ||    // Fullwidth Forms
2314
27.0k
         (cp >= 0xffe0 && cp <= 0xffe6) ||    // Fullwidth Forms
2315
27.0k
         (cp >= 0x20000 && cp <= 0x2fffd) ||  // CJK
2316
27.0k
         (cp >= 0x30000 && cp <= 0x3fffd) ||
2317
         // Miscellaneous Symbols and Pictographs + Emoticons:
2318
27.0k
         (cp >= 0x1f300 && cp <= 0x1f64f) ||
2319
         // Supplemental Symbols and Pictographs:
2320
27.0k
         (cp >= 0x1f900 && cp <= 0x1f9ff))) {
2321
4.07k
        return 2;
2322
4.07k
    }
2323
131k
    return 1;
2324
135k
}
2325
2326
constexpr std::size_t calculate_valid_text_width(char32_t cp)
2327
75.3k
{
2328
75.3k
    return calculate_text_width_for_fmt_v10(cp);
2329
75.3k
}
2330
2331
template <typename CharT>
2332
std::size_t calculate_valid_text_width(std::basic_string_view<CharT> input)
2333
{
2334
    size_t count{0};
2335
    for_each_code_point_valid(input, [&count](char32_t cp) {
2336
        count += calculate_text_width_for_fmt_v10(cp);
2337
    });
2338
    return count;
2339
}
2340
2341
constexpr std::size_t calculate_text_width(char32_t cp)
2342
208
{
2343
208
    return calculate_text_width_for_fmt_v10(cp);
2344
208
}
2345
2346
template <typename CharT>
2347
std::size_t calculate_text_width(std::basic_string_view<CharT> input)
2348
29.4k
{
2349
29.4k
    size_t count{0};
2350
60.0k
    for_each_code_point(input, [&count](char32_t cp) {
2351
60.0k
        count += calculate_text_width_for_fmt_v10(cp);
2352
60.0k
    });
scn::v3::impl::calculate_text_width<char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >)::{lambda(char32_t)#1}::operator()(char32_t) const
Line
Count
Source
2350
52.7k
    for_each_code_point(input, [&count](char32_t cp) {
2351
52.7k
        count += calculate_text_width_for_fmt_v10(cp);
2352
52.7k
    });
scn::v3::impl::calculate_text_width<wchar_t>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)::{lambda(char32_t)#1}::operator()(char32_t) const
Line
Count
Source
2350
7.34k
    for_each_code_point(input, [&count](char32_t cp) {
2351
7.34k
        count += calculate_text_width_for_fmt_v10(cp);
2352
7.34k
    });
2353
29.4k
    return count;
2354
29.4k
}
unsigned long scn::v3::impl::calculate_text_width<char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Line
Count
Source
2348
25.3k
{
2349
25.3k
    size_t count{0};
2350
25.3k
    for_each_code_point(input, [&count](char32_t cp) {
2351
25.3k
        count += calculate_text_width_for_fmt_v10(cp);
2352
25.3k
    });
2353
25.3k
    return count;
2354
25.3k
}
unsigned long scn::v3::impl::calculate_text_width<wchar_t>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >)
Line
Count
Source
2348
4.17k
{
2349
4.17k
    size_t count{0};
2350
4.17k
    for_each_code_point(input, [&count](char32_t cp) {
2351
4.17k
        count += calculate_text_width_for_fmt_v10(cp);
2352
4.17k
    });
2353
4.17k
    return count;
2354
4.17k
}
2355
2356
namespace counted_width_iterator_impl {
2357
template <typename It, typename S>
2358
class counted_width_iterator {
2359
    static_assert(ranges::forward_iterator<It>);
2360
    static_assert(ranges::sentinel_for<S, It>);
2361
2362
    template <typename OtherIt, typename OtherS>
2363
    friend class counted_width_iterator;
2364
2365
public:
2366
    using iterator = It;
2367
    using sentinel = S;
2368
    using value_type = ranges::iter_value_t<It>;
2369
    using pointer = value_type*;
2370
    using reference = value_type&;
2371
    using difference_type = ranges::iter_difference_t<It>;
2372
    using iterator_category =
2373
        std::conditional_t<ranges::bidirectional_iterator<It>,
2374
                           std::bidirectional_iterator_tag,
2375
                           std::forward_iterator_tag>;
2376
2377
    constexpr counted_width_iterator() = default;
2378
2379
    constexpr counted_width_iterator(iterator x, sentinel s, difference_type n)
2380
36.9k
        : m_current(x), m_end(s), m_count(n)
2381
36.9k
    {
2382
36.9k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::counted_width_iterator(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>, long)
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>::counted_width_iterator(scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t, long)
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::counted_width_iterator(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>, long)
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::counted_width_iterator(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>, long)
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>::counted_width_iterator(scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t, long)
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::counted_width_iterator(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>, long)
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::counted_width_iterator(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>, long)
Line
Count
Source
2380
4.61k
        : m_current(x), m_end(s), m_count(n)
2381
4.61k
    {
2382
4.61k
    }
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::counted_width_iterator(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>, long)
Line
Count
Source
2380
2.17k
        : m_current(x), m_end(s), m_count(n)
2381
2.17k
    {
2382
2.17k
    }
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::counted_width_iterator(char const*, char const*, long)
Line
Count
Source
2380
20.7k
        : m_current(x), m_end(s), m_count(n)
2381
20.7k
    {
2382
20.7k
    }
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::counted_width_iterator(wchar_t const*, wchar_t const*, long)
Line
Count
Source
2380
9.44k
        : m_current(x), m_end(s), m_count(n)
2381
9.44k
    {
2382
9.44k
    }
2383
2384
    template <typename OtherIt,
2385
              typename OtherS,
2386
              std::enable_if_t<std::is_convertible_v<OtherIt, It> &&
2387
                               std::is_convertible_v<OtherS, S>>* = nullptr>
2388
    constexpr counted_width_iterator(
2389
        const counted_width_iterator<OtherIt, OtherS>& other)
2390
        : m_current(other.m_current),
2391
          m_end(other.m_end),
2392
          m_count(other.m_count),
2393
          m_multibyte_left(other.m_multibyte_left)
2394
    {
2395
    }
2396
2397
    template <typename OtherIt, typename OtherS>
2398
    constexpr auto operator=(
2399
        const counted_width_iterator<OtherIt, OtherS>& other)
2400
        -> std::enable_if_t<std::is_convertible_v<OtherIt, It> &&
2401
                                std::is_convertible_v<OtherS, S>,
2402
                            counted_width_iterator&>
2403
    {
2404
        m_current = other.m_current;
2405
        m_end = other.m_end;
2406
        m_count = other.m_count;
2407
        m_multibyte_left = other.m_multibyte_left;
2408
        return *this;
2409
    }
2410
2411
    constexpr It base() const
2412
182k
    {
2413
182k
        return m_current;
2414
182k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::base() const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>::base() const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::base() const
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::base() const
Line
Count
Source
2412
126k
    {
2413
126k
        return m_current;
2414
126k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::base() const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>::base() const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::base() const
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::base() const
Line
Count
Source
2412
37.6k
    {
2413
37.6k
        return m_current;
2414
37.6k
    }
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::base() const
Line
Count
Source
2412
14.0k
    {
2413
14.0k
        return m_current;
2414
14.0k
    }
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::base() const
Line
Count
Source
2412
4.39k
    {
2413
4.39k
        return m_current;
2414
4.39k
    }
2415
    constexpr difference_type count() const
2416
176k
    {
2417
176k
        return m_count;
2418
176k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::count() const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>::count() const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::count() const
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::count() const
Line
Count
Source
2416
121k
    {
2417
121k
        return m_count;
2418
121k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::count() const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>::count() const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::count() const
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::count() const
Line
Count
Source
2416
35.9k
    {
2417
35.9k
        return m_count;
2418
35.9k
    }
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::count() const
Line
Count
Source
2416
14.4k
    {
2417
14.4k
        return m_count;
2418
14.4k
    }
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::count() const
Line
Count
Source
2416
4.42k
    {
2417
4.42k
        return m_count;
2418
4.42k
    }
2419
    constexpr difference_type multibyte_left() const
2420
4.77k
    {
2421
4.77k
        return m_multibyte_left;
2422
4.77k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>::multibyte_left() const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::multibyte_left() const
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::multibyte_left() const
Line
Count
Source
2420
3.56k
    {
2421
3.56k
        return m_multibyte_left;
2422
3.56k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::multibyte_left() const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>::multibyte_left() const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::multibyte_left() const
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::multibyte_left() const
Line
Count
Source
2420
390
    {
2421
390
        return m_multibyte_left;
2422
390
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::multibyte_left() const
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::multibyte_left() const
Line
Count
Source
2420
784
    {
2421
784
        return m_multibyte_left;
2422
784
    }
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::multibyte_left() const
Line
Count
Source
2420
34
    {
2421
34
        return m_multibyte_left;
2422
34
    }
2423
2424
    constexpr decltype(auto) operator*()
2425
167k
    {
2426
167k
        return *m_current;
2427
167k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>::operator*()
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::operator*()
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::operator*()
Line
Count
Source
2425
119k
    {
2426
119k
        return *m_current;
2427
119k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::operator*()
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>::operator*()
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::operator*()
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::operator*()
Line
Count
Source
2425
37.9k
    {
2426
37.9k
        return *m_current;
2427
37.9k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::operator*()
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::operator*()
Line
Count
Source
2425
8.25k
    {
2426
8.25k
        return *m_current;
2427
8.25k
    }
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::operator*()
Line
Count
Source
2425
2.22k
    {
2426
2.22k
        return *m_current;
2427
2.22k
    }
2428
    constexpr decltype(auto) operator*() const
2429
10.3k
    {
2430
10.3k
        return *m_current;
2431
10.3k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>::operator*() const
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::operator*() const
Line
Count
Source
2429
8.27k
    {
2430
8.27k
        return *m_current;
2431
8.27k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>::operator*() const
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::operator*() const
Line
Count
Source
2429
2.10k
    {
2430
2.10k
        return *m_current;
2431
2.10k
    }
2432
2433
    constexpr counted_width_iterator& operator++()
2434
163k
    {
2435
163k
        SCN_EXPECT(m_current != m_end);
2436
163k
        _increment_current();
2437
163k
        return *this;
2438
163k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>::operator++()
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::operator++()
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::operator++()
Line
Count
Source
2434
126k
    {
2435
126k
        SCN_EXPECT(m_current != m_end);
2436
126k
        _increment_current();
2437
126k
        return *this;
2438
126k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::operator++()
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>::operator++()
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::operator++()
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::operator++()
Line
Count
Source
2434
26.4k
    {
2435
26.4k
        SCN_EXPECT(m_current != m_end);
2436
26.4k
        _increment_current();
2437
26.4k
        return *this;
2438
26.4k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::operator++()
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::operator++()
Line
Count
Source
2434
9.54k
    {
2435
9.54k
        SCN_EXPECT(m_current != m_end);
2436
9.54k
        _increment_current();
2437
9.54k
        return *this;
2438
9.54k
    }
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::operator++()
Line
Count
Source
2434
1.05k
    {
2435
1.05k
        SCN_EXPECT(m_current != m_end);
2436
1.05k
        _increment_current();
2437
1.05k
        return *this;
2438
1.05k
    }
2439
2440
    constexpr counted_width_iterator operator++(int)
2441
    {
2442
        auto tmp = *this;
2443
        ++*this;
2444
        return tmp;
2445
    }
2446
2447
    template <typename Iter = It>
2448
    constexpr auto operator--()
2449
        -> std::enable_if_t<ranges::bidirectional_iterator<Iter>,
2450
                            counted_width_iterator&>
2451
0
    {
2452
0
        _decrement_current();
2453
0
        return *this;
2454
0
    }
Unexecuted instantiation: _ZN3scn2v34impl27counted_width_iterator_impl22counted_width_iteratorIPKcS5_EmmIS5_EENSt3__19enable_ifIXsr6rangesE22bidirectional_iteratorIT_EERS6_E4typeEv
Unexecuted instantiation: _ZN3scn2v34impl27counted_width_iterator_impl22counted_width_iteratorINS3_IPKcS5_EENS1_15take_width_viewINSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEE8sentinelILb1EEEEmmIS6_EENS8_9enable_ifIXsr6rangesE22bidirectional_iteratorIT_EERSG_E4typeEv
Unexecuted instantiation: _ZN3scn2v34impl27counted_width_iterator_impl22counted_width_iteratorIPKwS5_EmmIS5_EENSt3__19enable_ifIXsr6rangesE22bidirectional_iteratorIT_EERS6_E4typeEv
Unexecuted instantiation: _ZN3scn2v34impl27counted_width_iterator_impl22counted_width_iteratorINS3_IPKwS5_EENS1_15take_width_viewINSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEE8sentinelILb1EEEEmmIS6_EENS8_9enable_ifIXsr6rangesE22bidirectional_iteratorIT_EERSG_E4typeEv
Unexecuted instantiation: _ZN3scn2v34impl27counted_width_iterator_impl22counted_width_iteratorINS3_IPKcS5_EENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS5_S5_EEE8sentinelILb1EEEEmmIS6_EENSt3__19enable_ifIXsr6rangesE22bidirectional_iteratorIT_EERSG_E4typeEv
Unexecuted instantiation: _ZN3scn2v34impl27counted_width_iterator_impl22counted_width_iteratorINS3_IPKwS5_EENS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIS5_S5_EEE8sentinelILb1EEEEmmIS6_EENSt3__19enable_ifIXsr6rangesE22bidirectional_iteratorIT_EERSG_E4typeEv
2455
2456
    template <typename Iter = It>
2457
    constexpr auto operator--(int)
2458
        -> std::enable_if_t<ranges::bidirectional_iterator<Iter>,
2459
                            counted_width_iterator>
2460
    {
2461
        auto tmp = *this;
2462
        --*this;
2463
        return tmp;
2464
    }
2465
2466
    // TODO: optimize, make better than forward, if possible
2467
#if 0
2468
                template <typename Iter = It>
2469
                constexpr auto operator+(difference_type n) -> std::enable_if_t<
2470
                    ranges_std::random_access_iterator<Iter>,
2471
                    counted_width_iterator>
2472
                {
2473
                    // TODO
2474
                    return counted_width_iterator(m_current + n, m_count - n);
2475
                }
2476
2477
                template <typename Iter = It,
2478
                          std::enable_if_t<ranges_std::random_access_iterator<
2479
                              Iter>>* = nullptr>
2480
                friend constexpr counted_width_iterator operator+(
2481
                    ranges_std::iter_difference_t<Iter> n,
2482
                    const counted_width_iterator<Iter>& x)
2483
                {
2484
                    return x + n;
2485
                }
2486
2487
                template <typename Iter = It>
2488
                constexpr auto operator+=(difference_type n)
2489
                    -> std::enable_if_t<
2490
                        ranges_std::random_access_iterator<Iter>,
2491
                        counted_width_iterator&>
2492
                {
2493
                    // TODO
2494
                    m_current += n;
2495
                    m_count -= n;
2496
                    return *this;
2497
                }
2498
2499
                template <typename Iter = It>
2500
                constexpr auto operator-(difference_type n) -> std::enable_if_t<
2501
                    ranges_std::random_access_iterator<Iter>,
2502
                    counted_width_iterator>
2503
                {
2504
                    // TODO
2505
                    return counted_width_iterator(m_current - n, m_count + n);
2506
                }
2507
2508
                template <typename Iter = It,
2509
                          std::enable_if_t<ranges_std::random_access_iterator<
2510
                              Iter>>* = nullptr>
2511
                constexpr decltype(auto) operator[](difference_type n) const
2512
                {
2513
                    return m_current[n];
2514
                }
2515
#endif
2516
2517
    template <typename OtherIt, typename OtherS>
2518
    friend constexpr auto operator==(
2519
        const counted_width_iterator& a,
2520
        const counted_width_iterator<OtherIt, OtherS>& b)
2521
        -> decltype(SCN_DECLVAL(const It&) == SCN_DECLVAL(const OtherIt&))
2522
96.2k
    {
2523
96.2k
        return a.m_current == b.m_current;
2524
96.2k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v3::detail::basic_scan_buffer<char>::forward_iterator const& (*scn::v3::impl::counted_width_iterator_impl::operator==<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::detail::basic_scan_buffer<char>::forward_iterator const& (*)()>(decltype(nullptr)))()))
Unexecuted instantiation: decltype (((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> const& (*scn::v3::impl::counted_width_iterator_impl::operator==<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> const& (*)()>(decltype(nullptr)))()))
decltype (((static_cast<char const* const& (*scn::v3::impl::counted_width_iterator_impl::operator==<char const*, char const*>(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&))()>(decltype(nullptr)))())==((static_cast<char const* const& (*)()>(decltype(nullptr)))()))
Line
Count
Source
2522
80.3k
    {
2523
80.3k
        return a.m_current == b.m_current;
2524
80.3k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*scn::v3::impl::counted_width_iterator_impl::operator==<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*)()>(decltype(nullptr)))()))
Unexecuted instantiation: decltype (((static_cast<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator const& (*scn::v3::impl::counted_width_iterator_impl::operator==<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator const& (*)()>(decltype(nullptr)))()))
Unexecuted instantiation: decltype (((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> const& (*scn::v3::impl::counted_width_iterator_impl::operator==<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> const& (*)()>(decltype(nullptr)))()))
decltype (((static_cast<wchar_t const* const& (*scn::v3::impl::counted_width_iterator_impl::operator==<wchar_t const*, wchar_t const*>(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&))()>(decltype(nullptr)))())==((static_cast<wchar_t const* const& (*)()>(decltype(nullptr)))()))
Line
Count
Source
2522
10.1k
    {
2523
10.1k
        return a.m_current == b.m_current;
2524
10.1k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*scn::v3::impl::counted_width_iterator_impl::operator==<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*)()>(decltype(nullptr)))()))
decltype (((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*scn::v3::impl::counted_width_iterator_impl::operator==<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*)()>(decltype(nullptr)))()))
Line
Count
Source
2522
5.81k
    {
2523
5.81k
        return a.m_current == b.m_current;
2524
5.81k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*scn::v3::impl::counted_width_iterator_impl::operator==<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*)()>(decltype(nullptr)))()))
2525
    template <typename OtherIt, typename OtherS>
2526
    friend constexpr auto operator!=(
2527
        const counted_width_iterator& a,
2528
        const counted_width_iterator<OtherIt, OtherS>& b)
2529
        -> decltype(SCN_DECLVAL(const It&) == SCN_DECLVAL(const OtherIt&))
2530
87.9k
    {
2531
87.9k
        return !(a == b);
2532
87.9k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v3::detail::basic_scan_buffer<char>::forward_iterator const& (*scn::v3::impl::counted_width_iterator_impl::operator!=<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::detail::basic_scan_buffer<char>::forward_iterator const& (*)()>(decltype(nullptr)))()))
Unexecuted instantiation: decltype (((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> const& (*scn::v3::impl::counted_width_iterator_impl::operator!=<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> const& (*)()>(decltype(nullptr)))()))
decltype (((static_cast<char const* const& (*scn::v3::impl::counted_width_iterator_impl::operator!=<char const*, char const*>(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&))()>(decltype(nullptr)))())==((static_cast<char const* const& (*)()>(decltype(nullptr)))()))
Line
Count
Source
2530
72.7k
    {
2531
72.7k
        return !(a == b);
2532
72.7k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*scn::v3::impl::counted_width_iterator_impl::operator!=<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*)()>(decltype(nullptr)))()))
Unexecuted instantiation: decltype (((static_cast<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator const& (*scn::v3::impl::counted_width_iterator_impl::operator!=<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator const& (*)()>(decltype(nullptr)))()))
Unexecuted instantiation: decltype (((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> const& (*scn::v3::impl::counted_width_iterator_impl::operator!=<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> const& (*)()>(decltype(nullptr)))()))
decltype (((static_cast<wchar_t const* const& (*scn::v3::impl::counted_width_iterator_impl::operator!=<wchar_t const*, wchar_t const*>(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&))()>(decltype(nullptr)))())==((static_cast<wchar_t const* const& (*)()>(decltype(nullptr)))()))
Line
Count
Source
2530
9.40k
    {
2531
9.40k
        return !(a == b);
2532
9.40k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*scn::v3::impl::counted_width_iterator_impl::operator!=<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*)()>(decltype(nullptr)))()))
decltype (((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*scn::v3::impl::counted_width_iterator_impl::operator!=<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const& (*)()>(decltype(nullptr)))()))
Line
Count
Source
2530
5.81k
    {
2531
5.81k
        return !(a == b);
2532
5.81k
    }
Unexecuted instantiation: decltype (((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*scn::v3::impl::counted_width_iterator_impl::operator!=<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > const&, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > const&))()>(decltype(nullptr)))())==((static_cast<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const& (*)()>(decltype(nullptr)))()))
2533
2534
    friend constexpr bool operator==(const counted_width_iterator& x,
2535
                                     ranges::default_sentinel_t)
2536
    {
2537
        return x.count() == 0 && x.multibyte_left() == 0;
2538
    }
2539
    friend constexpr bool operator==(ranges::default_sentinel_t,
2540
                                     const counted_width_iterator& x)
2541
    {
2542
        return x.count() == 0 && x.multibyte_left() == 0;
2543
    }
2544
2545
    friend constexpr bool operator!=(const counted_width_iterator& a,
2546
                                     ranges::default_sentinel_t b)
2547
    {
2548
        return !(a == b);
2549
    }
2550
    friend constexpr bool operator!=(ranges::default_sentinel_t a,
2551
                                     const counted_width_iterator& b)
2552
    {
2553
        return !(a == b);
2554
    }
2555
2556
    template <typename OtherIt, typename OtherS>
2557
    friend constexpr auto operator<(
2558
        const counted_width_iterator& a,
2559
        const counted_width_iterator<OtherIt, OtherS>& b)
2560
        -> decltype(SCN_DECLVAL(const It&) < SCN_DECLVAL(const OtherIt&))
2561
    {
2562
        if (a.count() == b.count()) {
2563
            return a.multibyte_left() > b.multibyte_left();
2564
        }
2565
2566
        return a.count() > b.count();
2567
    }
2568
2569
    template <typename OtherIt, typename OtherS>
2570
    friend constexpr auto operator>(
2571
        const counted_width_iterator& a,
2572
        const counted_width_iterator<OtherIt, OtherS>& b)
2573
        -> decltype(SCN_DECLVAL(const It&) < SCN_DECLVAL(const OtherIt&))
2574
    {
2575
        return !(b < a);
2576
    }
2577
2578
    template <typename OtherIt, typename OtherS>
2579
    friend constexpr auto operator<=(
2580
        const counted_width_iterator& a,
2581
        const counted_width_iterator<OtherIt, OtherS>& b)
2582
        -> decltype(SCN_DECLVAL(const It&) < SCN_DECLVAL(const OtherIt&))
2583
    {
2584
        return !(b < a);
2585
    }
2586
2587
    template <typename OtherIt, typename OtherS>
2588
    friend constexpr auto operator>=(
2589
        const counted_width_iterator& a,
2590
        const counted_width_iterator<OtherIt, OtherS>& b)
2591
        -> decltype(SCN_DECLVAL(const It&) < SCN_DECLVAL(const OtherIt&))
2592
    {
2593
        return !(a < b);
2594
    }
2595
2596
#if 0
2597
                template <typename OtherIt, typename OtherS>
2598
                friend constexpr auto operator-(
2599
                    const counted_width_iterator& a,
2600
                    const counted_width_iterator<OtherIt, OtherS>& b)
2601
                    -> std::enable_if_t<ranges_std::common_with<OtherIt, It>,
2602
                                        ranges_std::iter_difference_t<OtherIt>>
2603
                {
2604
                    // TODO
2605
                }
2606
2607
                friend constexpr ranges_std::iter_difference_t<It> operator-(
2608
                    const counted_width_iterator& x,
2609
                    ranges_std::default_sentinel_t)
2610
                {
2611
                    // TODO
2612
                }
2613
2614
                friend constexpr ranges_std::iter_difference_t<It> operator-(
2615
                    ranges_std::default_sentinel_t,
2616
                    const counted_width_iterator& x)
2617
                {
2618
                    // TODO
2619
                }
2620
#endif
2621
2622
#if 0
2623
                template <typename Iter = It>
2624
                constexpr auto operator-=(difference_type n)
2625
                    -> std::enable_if_t<
2626
                        ranges_std::random_access_iterator<Iter>,
2627
                        counted_width_iterator&>
2628
                {
2629
                    // TODO
2630
                    m_current -= n;
2631
                    m_count += n;
2632
                    return *this;
2633
                }
2634
#endif
2635
2636
private:
2637
    difference_type _get_cp_length_at_current() const
2638
99.3k
    {
2639
99.3k
        return static_cast<difference_type>(
2640
99.3k
            detail::code_point_length_by_starting_code_unit(*m_current));
2641
99.3k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>::_get_cp_length_at_current() const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::_get_cp_length_at_current() const
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::_get_cp_length_at_current() const
Line
Count
Source
2638
66.6k
    {
2639
66.6k
        return static_cast<difference_type>(
2640
66.6k
            detail::code_point_length_by_starting_code_unit(*m_current));
2641
66.6k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::_get_cp_length_at_current() const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>::_get_cp_length_at_current() const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::_get_cp_length_at_current() const
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::_get_cp_length_at_current() const
Line
Count
Source
2638
26.4k
    {
2639
26.4k
        return static_cast<difference_type>(
2640
26.4k
            detail::code_point_length_by_starting_code_unit(*m_current));
2641
26.4k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::_get_cp_length_at_current() const
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::_get_cp_length_at_current() const
Line
Count
Source
2638
5.29k
    {
2639
5.29k
        return static_cast<difference_type>(
2640
5.29k
            detail::code_point_length_by_starting_code_unit(*m_current));
2641
5.29k
    }
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::_get_cp_length_at_current() const
Line
Count
Source
2638
1.05k
    {
2639
1.05k
        return static_cast<difference_type>(
2640
1.05k
            detail::code_point_length_by_starting_code_unit(*m_current));
2641
1.05k
    }
2642
2643
    difference_type _get_width_at_current_cp_start(difference_type cplen) const
2644
99.3k
    {
2645
99.3k
        if (SCN_UNLIKELY(cplen == 0)) {
2646
594
            return 0;
2647
594
        }
2648
2649
98.7k
        if (cplen == 1) {
2650
75.3k
            SCN_EXPECT(m_current != m_end);
2651
75.3k
            auto cp = static_cast<char32_t>(*m_current);
2652
75.3k
            return static_cast<difference_type>(calculate_valid_text_width(cp));
2653
75.3k
        }
2654
2655
23.4k
        auto r = read_exactly_n_code_units(ranges::subrange{m_current, m_end},
2656
23.4k
                                           cplen);
2657
23.4k
        if (SCN_UNLIKELY(!r)) {
2658
332
            return 0;
2659
332
        }
2660
2661
23.1k
        auto cp_str = std::basic_string<value_type>{m_current, *r};
2662
23.1k
        return static_cast<difference_type>(
2663
23.1k
            calculate_text_width(std::basic_string_view<value_type>{cp_str}));
2664
23.4k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>::_get_width_at_current_cp_start(long) const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::_get_width_at_current_cp_start(long) const
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::_get_width_at_current_cp_start(long) const
Line
Count
Source
2644
66.6k
    {
2645
66.6k
        if (SCN_UNLIKELY(cplen == 0)) {
2646
594
            return 0;
2647
594
        }
2648
2649
66.0k
        if (cplen == 1) {
2650
44.8k
            SCN_EXPECT(m_current != m_end);
2651
44.8k
            auto cp = static_cast<char32_t>(*m_current);
2652
44.8k
            return static_cast<difference_type>(calculate_valid_text_width(cp));
2653
44.8k
        }
2654
2655
21.1k
        auto r = read_exactly_n_code_units(ranges::subrange{m_current, m_end},
2656
21.1k
                                           cplen);
2657
21.1k
        if (SCN_UNLIKELY(!r)) {
2658
332
            return 0;
2659
332
        }
2660
2661
20.8k
        auto cp_str = std::basic_string<value_type>{m_current, *r};
2662
20.8k
        return static_cast<difference_type>(
2663
20.8k
            calculate_text_width(std::basic_string_view<value_type>{cp_str}));
2664
21.1k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::_get_width_at_current_cp_start(long) const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>::_get_width_at_current_cp_start(long) const
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::_get_width_at_current_cp_start(long) const
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::_get_width_at_current_cp_start(long) const
Line
Count
Source
2644
26.4k
    {
2645
26.4k
        if (SCN_UNLIKELY(cplen == 0)) {
2646
0
            return 0;
2647
0
        }
2648
2649
26.4k
        if (cplen == 1) {
2650
26.4k
            SCN_EXPECT(m_current != m_end);
2651
26.4k
            auto cp = static_cast<char32_t>(*m_current);
2652
26.4k
            return static_cast<difference_type>(calculate_valid_text_width(cp));
2653
26.4k
        }
2654
2655
0
        auto r = read_exactly_n_code_units(ranges::subrange{m_current, m_end},
2656
0
                                           cplen);
2657
0
        if (SCN_UNLIKELY(!r)) {
2658
0
            return 0;
2659
0
        }
2660
2661
0
        auto cp_str = std::basic_string<value_type>{m_current, *r};
2662
0
        return static_cast<difference_type>(
2663
0
            calculate_text_width(std::basic_string_view<value_type>{cp_str}));
2664
0
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::_get_width_at_current_cp_start(long) const
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::_get_width_at_current_cp_start(long) const
Line
Count
Source
2644
5.29k
    {
2645
5.29k
        if (SCN_UNLIKELY(cplen == 0)) {
2646
0
            return 0;
2647
0
        }
2648
2649
5.29k
        if (cplen == 1) {
2650
2.97k
            SCN_EXPECT(m_current != m_end);
2651
2.97k
            auto cp = static_cast<char32_t>(*m_current);
2652
2.97k
            return static_cast<difference_type>(calculate_valid_text_width(cp));
2653
2.97k
        }
2654
2655
2.31k
        auto r = read_exactly_n_code_units(ranges::subrange{m_current, m_end},
2656
2.31k
                                           cplen);
2657
2.31k
        if (SCN_UNLIKELY(!r)) {
2658
0
            return 0;
2659
0
        }
2660
2661
2.31k
        auto cp_str = std::basic_string<value_type>{m_current, *r};
2662
2.31k
        return static_cast<difference_type>(
2663
2.31k
            calculate_text_width(std::basic_string_view<value_type>{cp_str}));
2664
2.31k
    }
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::_get_width_at_current_cp_start(long) const
Line
Count
Source
2644
1.05k
    {
2645
1.05k
        if (SCN_UNLIKELY(cplen == 0)) {
2646
0
            return 0;
2647
0
        }
2648
2649
1.05k
        if (cplen == 1) {
2650
1.05k
            SCN_EXPECT(m_current != m_end);
2651
1.05k
            auto cp = static_cast<char32_t>(*m_current);
2652
1.05k
            return static_cast<difference_type>(calculate_valid_text_width(cp));
2653
1.05k
        }
2654
2655
0
        auto r = read_exactly_n_code_units(ranges::subrange{m_current, m_end},
2656
0
                                           cplen);
2657
0
        if (SCN_UNLIKELY(!r)) {
2658
0
            return 0;
2659
0
        }
2660
2661
0
        auto cp_str = std::basic_string<value_type>{m_current, *r};
2662
0
        return static_cast<difference_type>(
2663
0
            calculate_text_width(std::basic_string_view<value_type>{cp_str}));
2664
0
    }
2665
2666
    void _increment_current()
2667
163k
    {
2668
163k
        if (m_multibyte_left == 0) {
2669
99.3k
            auto cplen = _get_cp_length_at_current();
2670
99.3k
            m_multibyte_left = cplen - 1;
2671
99.3k
            m_count -= _get_width_at_current_cp_start(cplen);
2672
99.3k
        }
2673
63.7k
        else {
2674
63.7k
            --m_multibyte_left;
2675
63.7k
        }
2676
2677
163k
        ++m_current;
2678
163k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>::_increment_current()
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::_increment_current()
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::_increment_current()
Line
Count
Source
2667
126k
    {
2668
126k
        if (m_multibyte_left == 0) {
2669
66.6k
            auto cplen = _get_cp_length_at_current();
2670
66.6k
            m_multibyte_left = cplen - 1;
2671
66.6k
            m_count -= _get_width_at_current_cp_start(cplen);
2672
66.6k
        }
2673
59.4k
        else {
2674
59.4k
            --m_multibyte_left;
2675
59.4k
        }
2676
2677
126k
        ++m_current;
2678
126k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::_increment_current()
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>::_increment_current()
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> >::_increment_current()
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::_increment_current()
Line
Count
Source
2667
26.4k
    {
2668
26.4k
        if (m_multibyte_left == 0) {
2669
26.4k
            auto cplen = _get_cp_length_at_current();
2670
26.4k
            m_multibyte_left = cplen - 1;
2671
26.4k
            m_count -= _get_width_at_current_cp_start(cplen);
2672
26.4k
        }
2673
0
        else {
2674
0
            --m_multibyte_left;
2675
0
        }
2676
2677
26.4k
        ++m_current;
2678
26.4k
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::_increment_current()
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::_increment_current()
Line
Count
Source
2667
9.54k
    {
2668
9.54k
        if (m_multibyte_left == 0) {
2669
5.29k
            auto cplen = _get_cp_length_at_current();
2670
5.29k
            m_multibyte_left = cplen - 1;
2671
5.29k
            m_count -= _get_width_at_current_cp_start(cplen);
2672
5.29k
        }
2673
4.24k
        else {
2674
4.24k
            --m_multibyte_left;
2675
4.24k
        }
2676
2677
9.54k
        ++m_current;
2678
9.54k
    }
scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::_increment_current()
Line
Count
Source
2667
1.05k
    {
2668
1.05k
        if (m_multibyte_left == 0) {
2669
1.05k
            auto cplen = _get_cp_length_at_current();
2670
1.05k
            m_multibyte_left = cplen - 1;
2671
1.05k
            m_count -= _get_width_at_current_cp_start(cplen);
2672
1.05k
        }
2673
0
        else {
2674
0
            --m_multibyte_left;
2675
0
        }
2676
2677
1.05k
        ++m_current;
2678
1.05k
    }
2679
2680
    void _decrement_current()
2681
0
    {
2682
0
        --m_current;
2683
2684
0
        auto cplen = _get_cp_length_at_current();
2685
0
        if (cplen == 0) {
2686
0
            ++m_multibyte_left;
2687
0
        }
2688
0
        else {
2689
0
            m_count += _get_width_at_current_cp_start(cplen);
2690
0
            m_multibyte_left = cplen - 1;
2691
0
        }
2692
0
    }
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>::_decrement_current()
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> >::_decrement_current()
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>::_decrement_current()
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> >::_decrement_current()
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> >::_decrement_current()
Unexecuted instantiation: scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> >::_decrement_current()
2693
2694
    It m_current{};
2695
    S m_end{};
2696
    difference_type m_count{0};
2697
    difference_type m_multibyte_left{0};
2698
};
2699
2700
template <typename I, typename S>
2701
counted_width_iterator(I, S, ranges::iter_difference_t<I>)
2702
    -> counted_width_iterator<I, S>;
2703
}  // namespace counted_width_iterator_impl
2704
2705
using counted_width_iterator_impl::counted_width_iterator;
2706
2707
template <typename View, typename = void>
2708
struct take_width_view_storage;
2709
2710
template <typename View>
2711
struct take_width_view_storage<View,
2712
                               std::enable_if_t<ranges::borrowed_range<View>>> {
2713
17.0k
    take_width_view_storage(const View& v) : view(v) {}
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, void>::take_width_view_storage(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&)
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, void>::take_width_view_storage(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > const&)
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<std::__1::basic_string_view<char, std::__1::char_traits<char> >, void>::take_width_view_storage(std::__1::basic_string_view<char, std::__1::char_traits<char> > const&)
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >, void>::take_width_view_storage(scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&)
scn::v3::impl::take_width_view_storage<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>, void>::take_width_view_storage(scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> const&)
Line
Count
Source
2713
9.63k
    take_width_view_storage(const View& v) : view(v) {}
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, void>::take_width_view_storage(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&)
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, void>::take_width_view_storage(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > const&)
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, void>::take_width_view_storage(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&)
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >, void>::take_width_view_storage(scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > const&)
scn::v3::impl::take_width_view_storage<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, void>::take_width_view_storage(scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> const&)
Line
Count
Source
2713
3.49k
    take_width_view_storage(const View& v) : view(v) {}
scn::v3::impl::take_width_view_storage<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >, void>::take_width_view_storage(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > const&)
Line
Count
Source
2713
2.67k
    take_width_view_storage(const View& v) : view(v) {}
scn::v3::impl::take_width_view_storage<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >, void>::take_width_view_storage(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > const&)
Line
Count
Source
2713
1.20k
    take_width_view_storage(const View& v) : view(v) {}
2714
2715
    const View& get() const
2716
168k
    {
2717
168k
        return view;
2718
168k
    }
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, void>::get() const
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, void>::get() const
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<std::__1::basic_string_view<char, std::__1::char_traits<char> >, void>::get() const
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >, void>::get() const
scn::v3::impl::take_width_view_storage<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>, void>::get() const
Line
Count
Source
2716
110k
    {
2717
110k
        return view;
2718
110k
    }
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, void>::get() const
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, void>::get() const
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, void>::get() const
Unexecuted instantiation: scn::v3::impl::take_width_view_storage<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >, void>::get() const
scn::v3::impl::take_width_view_storage<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, void>::get() const
Line
Count
Source
2716
32.0k
    {
2717
32.0k
        return view;
2718
32.0k
    }
scn::v3::impl::take_width_view_storage<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >, void>::get() const
Line
Count
Source
2716
18.5k
    {
2717
18.5k
        return view;
2718
18.5k
    }
scn::v3::impl::take_width_view_storage<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >, void>::get() const
Line
Count
Source
2716
7.57k
    {
2717
7.57k
        return view;
2718
7.57k
    }
2719
2720
    View view;
2721
};
2722
2723
template <typename View>
2724
struct take_width_view_storage<
2725
    View,
2726
    std::enable_if_t<!ranges::borrowed_range<View>>> {
2727
    take_width_view_storage(const View& v) : view(&v) {}
2728
2729
    const View& get() const
2730
    {
2731
        return *view;
2732
    }
2733
2734
    const View* view;
2735
};
2736
2737
template <typename View>
2738
class take_width_view : public ranges::view_interface<take_width_view<View>> {
2739
    template <bool IsConst>
2740
    class sentinel {
2741
        friend class sentinel<!IsConst>;
2742
        using Base = std::conditional_t<IsConst, const View, View>;
2743
        using CWI = counted_width_iterator<ranges::iterator_t<Base>,
2744
                                           ranges::sentinel_t<Base>>;
2745
        using underlying = ranges::sentinel_t<Base>;
2746
2747
    public:
2748
        constexpr sentinel() = default;
2749
2750
94.7k
        constexpr explicit sentinel(underlying s) : m_end(SCN_MOVE(s)) {}
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>::sentinel(scn::v3::ranges::default_sentinel_t)
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true>::sentinel(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>)
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true>::sentinel(scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>)
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>::sentinel(scn::v3::ranges::default_sentinel_t)
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true>::sentinel(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true>)
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true>::sentinel(scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>)
scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true>::sentinel(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>)
Line
Count
Source
2750
9.35k
        constexpr explicit sentinel(underlying s) : m_end(SCN_MOVE(s)) {}
scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true>::sentinel(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>)
Line
Count
Source
2750
3.22k
        constexpr explicit sentinel(underlying s) : m_end(SCN_MOVE(s)) {}
Unexecuted instantiation: scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true>::sentinel(char const*)
scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true>::sentinel(char const*)
Line
Count
Source
2750
68.9k
        constexpr explicit sentinel(underlying s) : m_end(SCN_MOVE(s)) {}
Unexecuted instantiation: scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true>::sentinel(wchar_t const*)
scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true>::sentinel(wchar_t const*)
Line
Count
Source
2750
13.1k
        constexpr explicit sentinel(underlying s) : m_end(SCN_MOVE(s)) {}
2751
2752
        template <
2753
            typename S,
2754
            std::enable_if_t<std::is_same_v<S, sentinel<!IsConst>>>* = nullptr,
2755
            bool C = IsConst,
2756
            typename VV = View,
2757
            std::enable_if_t<C && std::is_convertible_v<ranges::sentinel_t<VV>,
2758
                                                        underlying>>* = nullptr>
2759
        constexpr explicit sentinel(S s) : m_end(SCN_MOVE(s.m_end))
2760
        {
2761
        }
2762
2763
        constexpr underlying base() const
2764
        {
2765
            return m_end;
2766
        }
2767
2768
        friend constexpr bool operator==(const CWI& y, const sentinel& x)
2769
169k
        {
2770
169k
            return (y.count() == 0 && y.multibyte_left() == 0) ||
2771
169k
                   y.base() == x.m_end;
2772
169k
        }
Unexecuted instantiation: scn::v3::impl::operator==(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> const&)
Unexecuted instantiation: scn::v3::impl::operator==(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v3::impl::operator==(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v3::impl::operator==(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > const&, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> const&)
scn::v3::impl::operator==(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> const&)
Line
Count
Source
2769
119k
        {
2770
119k
            return (y.count() == 0 && y.multibyte_left() == 0) ||
2771
119k
                   y.base() == x.m_end;
2772
119k
        }
Unexecuted instantiation: scn::v3::impl::operator==(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> const&)
Unexecuted instantiation: scn::v3::impl::operator==(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v3::impl::operator==(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v3::impl::operator==(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > const&, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> const&)
scn::v3::impl::operator==(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> const&)
Line
Count
Source
2769
35.2k
        {
2770
35.2k
            return (y.count() == 0 && y.multibyte_left() == 0) ||
2771
35.2k
                   y.base() == x.m_end;
2772
35.2k
        }
scn::v3::impl::operator==(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > const&, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> const&)
Line
Count
Source
2769
12.0k
        {
2770
12.0k
            return (y.count() == 0 && y.multibyte_left() == 0) ||
2771
12.0k
                   y.base() == x.m_end;
2772
12.0k
        }
scn::v3::impl::operator==(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > const&, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> const&)
Line
Count
Source
2769
3.22k
        {
2770
3.22k
            return (y.count() == 0 && y.multibyte_left() == 0) ||
2771
3.22k
                   y.base() == x.m_end;
2772
3.22k
        }
2773
2774
        friend constexpr bool operator==(const sentinel& x, const CWI& y)
2775
        {
2776
            return y == x;
2777
        }
2778
2779
        friend constexpr bool operator!=(const CWI& y, const sentinel& x)
2780
88.5k
        {
2781
88.5k
            return !(y == x);
2782
88.5k
        }
Unexecuted instantiation: scn::v3::impl::operator!=(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> const&)
Unexecuted instantiation: scn::v3::impl::operator!=(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v3::impl::operator!=(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v3::impl::operator!=(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::sentinel<true> > const&, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::sentinel<true> const&)
scn::v3::impl::operator!=(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> const&)
Line
Count
Source
2780
64.4k
        {
2781
64.4k
            return !(y == x);
2782
64.4k
        }
Unexecuted instantiation: scn::v3::impl::operator!=(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> const&)
Unexecuted instantiation: scn::v3::impl::operator!=(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::sentinel<true> > const&, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v3::impl::operator!=(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> const&)
Unexecuted instantiation: scn::v3::impl::operator!=(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::sentinel<true> > const&, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::sentinel<true> const&)
scn::v3::impl::operator!=(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> const&)
Line
Count
Source
2780
16.4k
        {
2781
16.4k
            return !(y == x);
2782
16.4k
        }
scn::v3::impl::operator!=(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::sentinel<true> > const&, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::sentinel<true> const&)
Line
Count
Source
2780
6.24k
        {
2781
6.24k
            return !(y == x);
2782
6.24k
        }
scn::v3::impl::operator!=(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::sentinel<true> > const&, scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::sentinel<true> const&)
Line
Count
Source
2780
1.28k
        {
2781
1.28k
            return !(y == x);
2782
1.28k
        }
2783
2784
        friend constexpr bool operator!=(const sentinel& x, const CWI& y)
2785
        {
2786
            return !(y == x);
2787
        }
2788
2789
    private:
2790
        SCN_NO_UNIQUE_ADDRESS underlying m_end{};
2791
    };
2792
2793
public:
2794
    using value_type = ranges::range_value_t<View>;
2795
2796
    take_width_view() = default;
2797
2798
    constexpr take_width_view(const View& base, std::ptrdiff_t count)
2799
17.0k
        : m_base(base), m_count(count)
2800
17.0k
    {
2801
17.0k
    }
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::take_width_view(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&, long)
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::take_width_view(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > const&, long)
Unexecuted instantiation: scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::take_width_view(std::__1::basic_string_view<char, std::__1::char_traits<char> > const&, long)
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::take_width_view(scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, long)
scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::take_width_view(scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> const&, long)
Line
Count
Source
2799
9.63k
        : m_base(base), m_count(count)
2800
9.63k
    {
2801
9.63k
    }
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::take_width_view(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&, long)
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::take_width_view(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > const&, long)
Unexecuted instantiation: scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::take_width_view(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, long)
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::take_width_view(scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > const&, long)
scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::take_width_view(scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> const&, long)
Line
Count
Source
2799
3.49k
        : m_base(base), m_count(count)
2800
3.49k
    {
2801
3.49k
    }
scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::take_width_view(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > const&, long)
Line
Count
Source
2799
2.67k
        : m_base(base), m_count(count)
2800
2.67k
    {
2801
2.67k
    }
scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::take_width_view(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > const&, long)
Line
Count
Source
2799
1.20k
        : m_base(base), m_count(count)
2800
1.20k
    {
2801
1.20k
    }
2802
2803
    constexpr View base() const
2804
    {
2805
        return m_base;
2806
    }
2807
2808
    constexpr auto begin() const
2809
36.9k
    {
2810
36.9k
        return counted_width_iterator{m_base.get().begin(), m_base.get().end(),
2811
36.9k
                                      m_count};
2812
36.9k
    }
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::begin() const
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::begin() const
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::begin() const
Unexecuted instantiation: scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::begin() const
scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::begin() const
Line
Count
Source
2809
20.7k
    {
2810
20.7k
        return counted_width_iterator{m_base.get().begin(), m_base.get().end(),
2811
20.7k
                                      m_count};
2812
20.7k
    }
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::begin() const
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::begin() const
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::begin() const
Unexecuted instantiation: scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::begin() const
scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::begin() const
Line
Count
Source
2809
9.44k
    {
2810
9.44k
        return counted_width_iterator{m_base.get().begin(), m_base.get().end(),
2811
9.44k
                                      m_count};
2812
9.44k
    }
scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::begin() const
Line
Count
Source
2809
4.61k
    {
2810
4.61k
        return counted_width_iterator{m_base.get().begin(), m_base.get().end(),
2811
4.61k
                                      m_count};
2812
4.61k
    }
scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::begin() const
Line
Count
Source
2809
2.17k
    {
2810
2.17k
        return counted_width_iterator{m_base.get().begin(), m_base.get().end(),
2811
2.17k
                                      m_count};
2812
2.17k
    }
2813
2814
    constexpr auto end() const
2815
94.7k
    {
2816
94.7k
        return sentinel<true>{m_base.get().end()};
2817
94.7k
    }
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::end() const
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::end() const
Unexecuted instantiation: scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > >::end() const
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >::end() const
scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >::end() const
Line
Count
Source
2815
68.9k
    {
2816
68.9k
        return sentinel<true>{m_base.get().end()};
2817
68.9k
    }
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >::end() const
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >::end() const
Unexecuted instantiation: scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >::end() const
Unexecuted instantiation: scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >::end() const
scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >::end() const
Line
Count
Source
2815
13.1k
    {
2816
13.1k
        return sentinel<true>{m_base.get().end()};
2817
13.1k
    }
scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >::end() const
Line
Count
Source
2815
9.35k
    {
2816
9.35k
        return sentinel<true>{m_base.get().end()};
2817
9.35k
    }
scn::v3::impl::take_width_view<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >::end() const
Line
Count
Source
2815
3.22k
    {
2816
3.22k
        return sentinel<true>{m_base.get().end()};
2817
3.22k
    }
2818
2819
private:
2820
    take_width_view_storage<View> m_base{};
2821
    std::ptrdiff_t m_count{0};
2822
};
2823
2824
template <typename R>
2825
take_width_view(R&&, std::ptrdiff_t) -> take_width_view<R>;
2826
2827
struct _take_width_fn {
2828
    template <typename R>
2829
    constexpr auto operator()(const R& r, std::ptrdiff_t n) const
2830
        -> decltype(take_width_view{r, n})
2831
17.0k
    {
2832
17.0k
        return take_width_view{r, n};
2833
17.0k
    }
Unexecuted instantiation: decltype (scn::v3::impl::take_width_view{{parm#1}, {parm#2}}) scn::v3::impl::_take_width_fn::operator()<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&, long) const
Unexecuted instantiation: decltype (scn::v3::impl::take_width_view{{parm#1}, {parm#2}}) scn::v3::impl::_take_width_fn::operator()<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > const&, long) const
Unexecuted instantiation: decltype (scn::v3::impl::take_width_view{{parm#1}, {parm#2}}) scn::v3::impl::_take_width_fn::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> > const&, long) const
Unexecuted instantiation: decltype (scn::v3::impl::take_width_view{{parm#1}, {parm#2}}) scn::v3::impl::_take_width_fn::operator()<scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > >(scn::v3::impl::take_width_view<std::__1::basic_string_view<char, std::__1::char_traits<char> > > const&, long) const
decltype (scn::v3::impl::take_width_view{{parm#1}, {parm#2}}) scn::v3::impl::_take_width_fn::operator()<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> const&, long) const
Line
Count
Source
2831
9.63k
    {
2832
9.63k
        return take_width_view{r, n};
2833
9.63k
    }
Unexecuted instantiation: decltype (scn::v3::impl::take_width_view{{parm#1}, {parm#2}}) scn::v3::impl::_take_width_fn::operator()<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&, long) const
Unexecuted instantiation: decltype (scn::v3::impl::take_width_view{{parm#1}, {parm#2}}) scn::v3::impl::_take_width_fn::operator()<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > const&, long) const
Unexecuted instantiation: decltype (scn::v3::impl::take_width_view{{parm#1}, {parm#2}}) scn::v3::impl::_take_width_fn::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > const&, long) const
Unexecuted instantiation: decltype (scn::v3::impl::take_width_view{{parm#1}, {parm#2}}) scn::v3::impl::_take_width_fn::operator()<scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > >(scn::v3::impl::take_width_view<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > > const&, long) const
decltype (scn::v3::impl::take_width_view{{parm#1}, {parm#2}}) scn::v3::impl::_take_width_fn::operator()<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> const&, long) const
Line
Count
Source
2831
3.49k
    {
2832
3.49k
        return take_width_view{r, n};
2833
3.49k
    }
decltype (scn::v3::impl::take_width_view{{parm#1}, {parm#2}}) scn::v3::impl::_take_width_fn::operator()<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > const&, long) const
Line
Count
Source
2831
2.67k
    {
2832
2.67k
        return take_width_view{r, n};
2833
2.67k
    }
decltype (scn::v3::impl::take_width_view{{parm#1}, {parm#2}}) scn::v3::impl::_take_width_fn::operator()<scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >(scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > const&, long) const
Line
Count
Source
2831
1.20k
    {
2832
1.20k
        return take_width_view{r, n};
2833
1.20k
    }
2834
};
2835
2836
inline constexpr _take_width_fn take_width{};
2837
}  // namespace impl
2838
2839
namespace ranges {
2840
template <typename R>
2841
inline constexpr bool enable_borrowed_range<::scn::impl::take_width_view<R>> =
2842
    enable_borrowed_range<R>;
2843
}
2844
2845
/////////////////////////////////////////////////////////////////
2846
// contiguous_scan_context
2847
/////////////////////////////////////////////////////////////////
2848
2849
namespace impl {
2850
template <typename CharT>
2851
class basic_contiguous_scan_context
2852
    : public detail::scan_context_base<
2853
          basic_scan_args<basic_scan_context<CharT>>> {
2854
    using base =
2855
        detail::scan_context_base<basic_scan_args<basic_scan_context<CharT>>>;
2856
2857
public:
2858
    using char_type = CharT;
2859
    using buffer_type = detail::basic_scan_buffer<char_type>;
2860
    using range_type = ranges::subrange<const char_type*, const char_type*>;
2861
    using iterator = const char_type*;
2862
    using sentinel = const char_type*;
2863
    using parse_context_type = basic_scan_parse_context<char_type>;
2864
2865
    using parent_context_type = basic_scan_context<char_type>;
2866
    using args_type = basic_scan_args<parent_context_type>;
2867
    using arg_type = basic_scan_arg<parent_context_type>;
2868
2869
    template <typename Range,
2870
              std::enable_if_t<ranges::contiguous_range<Range> &&
2871
                               ranges::borrowed_range<Range>>* = nullptr>
2872
    constexpr basic_contiguous_scan_context(Range&& r,
2873
                                            args_type a,
2874
                                            detail::locale_ref loc = {})
2875
339k
        : base(SCN_MOVE(a), loc),
2876
339k
          m_range(SCN_FWD(r)),
2877
339k
          m_current(m_range.begin())
2878
339k
    {
2879
339k
    }
_ZN3scn2v34impl29basic_contiguous_scan_contextIcEC2IRNS0_6ranges6detail9subrange_8subrangeIPKcSA_EETnPNSt3__19enable_ifIXaasr6rangesE16contiguous_rangeIT_Esr6rangesE14borrowed_rangeISF_EEvE4typeELPv0EEEOSF_NS0_15basic_scan_argsINS0_18basic_scan_contextIcEEEENS0_6detail10locale_refE
Line
Count
Source
2875
113k
        : base(SCN_MOVE(a), loc),
2876
113k
          m_range(SCN_FWD(r)),
2877
113k
          m_current(m_range.begin())
2878
113k
    {
2879
113k
    }
_ZN3scn2v34impl29basic_contiguous_scan_contextIwEC2IRNS0_6ranges6detail9subrange_8subrangeIPKwSA_EETnPNSt3__19enable_ifIXaasr6rangesE16contiguous_rangeIT_Esr6rangesE14borrowed_rangeISF_EEvE4typeELPv0EEEOSF_NS0_15basic_scan_argsINS0_18basic_scan_contextIwEEEENS0_6detail10locale_refE
Line
Count
Source
2875
226k
        : base(SCN_MOVE(a), loc),
2876
226k
          m_range(SCN_FWD(r)),
2877
226k
          m_current(m_range.begin())
2878
226k
    {
2879
226k
    }
2880
2881
    constexpr iterator begin() const
2882
464M
    {
2883
464M
        return m_current;
2884
464M
    }
scn::v3::impl::basic_contiguous_scan_context<char>::begin() const
Line
Count
Source
2882
247k
    {
2883
247k
        return m_current;
2884
247k
    }
scn::v3::impl::basic_contiguous_scan_context<wchar_t>::begin() const
Line
Count
Source
2882
463M
    {
2883
463M
        return m_current;
2884
463M
    }
2885
2886
    constexpr sentinel end() const
2887
927M
    {
2888
927M
        return m_range.end();
2889
927M
    }
scn::v3::impl::basic_contiguous_scan_context<char>::end() const
Line
Count
Source
2887
187k
    {
2888
187k
        return m_range.end();
2889
187k
    }
scn::v3::impl::basic_contiguous_scan_context<wchar_t>::end() const
Line
Count
Source
2887
926M
    {
2888
926M
        return m_range.end();
2889
926M
    }
2890
2891
    constexpr auto range() const
2892
227k
    {
2893
227k
        return ranges::subrange{begin(), end()};
2894
227k
    }
scn::v3::impl::basic_contiguous_scan_context<char>::range() const
Line
Count
Source
2892
77.0k
    {
2893
77.0k
        return ranges::subrange{begin(), end()};
2894
77.0k
    }
scn::v3::impl::basic_contiguous_scan_context<wchar_t>::range() const
Line
Count
Source
2892
150k
    {
2893
150k
        return ranges::subrange{begin(), end()};
2894
150k
    }
2895
2896
    constexpr auto underlying_range() const
2897
0
    {
2898
0
        return m_range;
2899
0
    }
Unexecuted instantiation: scn::v3::impl::basic_contiguous_scan_context<char>::underlying_range() const
Unexecuted instantiation: scn::v3::impl::basic_contiguous_scan_context<wchar_t>::underlying_range() const
2900
2901
    void advance_to(iterator it)
2902
463M
    {
2903
463M
        SCN_EXPECT(it <= end());
2904
463M
        if constexpr (detail::is_comparable_with_nullptr<iterator>) {
2905
463M
            if (it == nullptr) {
2906
0
                it = end();
2907
0
            }
2908
463M
        }
2909
463M
        m_current = SCN_MOVE(it);
2910
463M
    }
scn::v3::impl::basic_contiguous_scan_context<char>::advance_to(char const*)
Line
Count
Source
2902
56.5k
    {
2903
56.5k
        SCN_EXPECT(it <= end());
2904
56.5k
        if constexpr (detail::is_comparable_with_nullptr<iterator>) {
2905
56.5k
            if (it == nullptr) {
2906
0
                it = end();
2907
0
            }
2908
56.5k
        }
2909
56.5k
        m_current = SCN_MOVE(it);
2910
56.5k
    }
scn::v3::impl::basic_contiguous_scan_context<wchar_t>::advance_to(wchar_t const*)
Line
Count
Source
2902
463M
    {
2903
463M
        SCN_EXPECT(it <= end());
2904
463M
        if constexpr (detail::is_comparable_with_nullptr<iterator>) {
2905
463M
            if (it == nullptr) {
2906
0
                it = end();
2907
0
            }
2908
463M
        }
2909
463M
        m_current = SCN_MOVE(it);
2910
463M
    }
2911
2912
    void advance_to(const typename parent_context_type::iterator& it)
2913
0
    {
2914
0
        SCN_EXPECT(it.position() <= m_range.size());
2915
0
        m_current = m_range.begin() + it.position();
2916
0
    }
Unexecuted instantiation: scn::v3::impl::basic_contiguous_scan_context<char>::advance_to(scn::v3::detail::basic_scan_buffer<char>::forward_iterator const&)
Unexecuted instantiation: scn::v3::impl::basic_contiguous_scan_context<wchar_t>::advance_to(scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator const&)
2917
2918
    std::ptrdiff_t begin_position()
2919
0
    {
2920
0
        return ranges::distance(m_range.begin(), begin());
2921
0
    }
Unexecuted instantiation: scn::v3::impl::basic_contiguous_scan_context<char>::begin_position()
Unexecuted instantiation: scn::v3::impl::basic_contiguous_scan_context<wchar_t>::begin_position()
2922
2923
private:
2924
    range_type m_range;
2925
    iterator m_current;
2926
};
2927
2928
struct reader_error_handler {
2929
    constexpr void on_error(const char* msg)
2930
56.5k
    {
2931
56.5k
        SCN_UNLIKELY_ATTR
2932
56.5k
        m_msg = msg;
2933
56.5k
    }
2934
    explicit constexpr operator bool() const
2935
93.8k
    {
2936
93.8k
        return m_msg == nullptr;
2937
93.8k
    }
2938
2939
    const char* m_msg{nullptr};
2940
};
2941
2942
/////////////////////////////////////////////////////////////////
2943
// General reading support
2944
/////////////////////////////////////////////////////////////////
2945
2946
template <typename SourceRange>
2947
auto skip_classic_whitespace(const SourceRange& range,
2948
                             bool allow_exhaustion = false)
2949
    -> eof_expected<ranges::const_iterator_t<SourceRange>>
2950
118k
{
2951
118k
    if (!allow_exhaustion) {
2952
116k
        auto it = read_while_classic_space(range);
2953
116k
        if (auto e = eof_check(ranges::subrange{it, range.end()});
2954
116k
            SCN_UNLIKELY(!e)) {
2955
174
            return unexpected(e);
2956
174
        }
2957
2958
116k
        return it;
2959
116k
    }
2960
2961
1.62k
    return read_while_classic_space(range);
2962
118k
}
Unexecuted instantiation: _ZN3scn2v34impl23skip_classic_whitespaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSJ_b
Unexecuted instantiation: _ZN3scn2v34impl23skip_classic_whitespaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSI_b
Unexecuted instantiation: _ZN3scn2v34impl23skip_classic_whitespaceINS1_15take_width_viewINS3_INSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEEEERKSE_b
Unexecuted instantiation: _ZN3scn2v34impl23skip_classic_whitespaceINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEEEERKSD_b
_ZN3scn2v34impl23skip_classic_whitespaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSF_b
Line
Count
Source
2950
480
{
2951
480
    if (!allow_exhaustion) {
2952
0
        auto it = read_while_classic_space(range);
2953
0
        if (auto e = eof_check(ranges::subrange{it, range.end()});
2954
0
            SCN_UNLIKELY(!e)) {
2955
0
            return unexpected(e);
2956
0
        }
2957
2958
0
        return it;
2959
0
    }
2960
2961
480
    return read_while_classic_space(range);
2962
480
}
_ZN3scn2v34impl23skip_classic_whitespaceINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSD_b
Line
Count
Source
2950
6.94k
{
2951
6.94k
    if (!allow_exhaustion) {
2952
6.74k
        auto it = read_while_classic_space(range);
2953
6.74k
        if (auto e = eof_check(ranges::subrange{it, range.end()});
2954
6.74k
            SCN_UNLIKELY(!e)) {
2955
0
            return unexpected(e);
2956
0
        }
2957
2958
6.74k
        return it;
2959
6.74k
    }
2960
2961
202
    return read_while_classic_space(range);
2962
6.94k
}
Unexecuted instantiation: _ZN3scn2v34impl23skip_classic_whitespaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSG_b
Unexecuted instantiation: _ZN3scn2v34impl23skip_classic_whitespaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSJ_b
Unexecuted instantiation: _ZN3scn2v34impl23skip_classic_whitespaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSI_b
Unexecuted instantiation: _ZN3scn2v34impl23skip_classic_whitespaceINS1_15take_width_viewINS3_INSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEEEERKSE_b
Unexecuted instantiation: _ZN3scn2v34impl23skip_classic_whitespaceINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS4_9add_constIT_E4typeEEEEEEERKSD_b
Unexecuted instantiation: _ZN3scn2v34impl23skip_classic_whitespaceINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEEEERKSB_b
_ZN3scn2v34impl23skip_classic_whitespaceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSF_b
Line
Count
Source
2950
200
{
2951
200
    if (!allow_exhaustion) {
2952
0
        auto it = read_while_classic_space(range);
2953
0
        if (auto e = eof_check(ranges::subrange{it, range.end()});
2954
0
            SCN_UNLIKELY(!e)) {
2955
0
            return unexpected(e);
2956
0
        }
2957
2958
0
        return it;
2959
0
    }
2960
2961
200
    return read_while_classic_space(range);
2962
200
}
_ZN3scn2v34impl23skip_classic_whitespaceINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSD_b
Line
Count
Source
2950
107k
{
2951
107k
    if (!allow_exhaustion) {
2952
107k
        auto it = read_while_classic_space(range);
2953
107k
        if (auto e = eof_check(ranges::subrange{it, range.end()});
2954
107k
            SCN_UNLIKELY(!e)) {
2955
0
            return unexpected(e);
2956
0
        }
2957
2958
107k
        return it;
2959
107k
    }
2960
2961
740
    return read_while_classic_space(range);
2962
107k
}
Unexecuted instantiation: _ZN3scn2v34impl23skip_classic_whitespaceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSG_b
_ZN3scn2v34impl23skip_classic_whitespaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSG_b
Line
Count
Source
2950
1.94k
{
2951
1.94k
    if (!allow_exhaustion) {
2952
1.94k
        auto it = read_while_classic_space(range);
2953
1.94k
        if (auto e = eof_check(ranges::subrange{it, range.end()});
2954
1.94k
            SCN_UNLIKELY(!e)) {
2955
174
            return unexpected(e);
2956
174
        }
2957
2958
1.76k
        return it;
2959
1.94k
    }
2960
2961
0
    return read_while_classic_space(range);
2962
1.94k
}
_ZN3scn2v34impl23skip_classic_whitespaceINS1_15take_width_viewINS3_INS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEEEENS1_12eof_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSG_b
Line
Count
Source
2950
970
{
2951
970
    if (!allow_exhaustion) {
2952
970
        auto it = read_while_classic_space(range);
2953
970
        if (auto e = eof_check(ranges::subrange{it, range.end()});
2954
970
            SCN_UNLIKELY(!e)) {
2955
0
            return unexpected(e);
2956
0
        }
2957
2958
970
        return it;
2959
970
    }
2960
2961
0
    return read_while_classic_space(range);
2962
970
}
Unexecuted instantiation: _ZN3scn2v34impl23skip_classic_whitespaceINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRNS3_9add_constIT_E4typeEEEEEEERKSB_b
2963
2964
template <typename SourceCharT, typename DestCharT>
2965
scan_error transcode_impl(std::basic_string_view<SourceCharT> src,
2966
                          std::basic_string<DestCharT>& dst)
2967
16.0k
{
2968
16.0k
    dst.clear();
2969
16.0k
    transcode_valid_to_string(src, dst);
2970
16.0k
    return {};
2971
16.0k
}
scn::v3::scan_error scn::v3::impl::transcode_impl<char, wchar_t>(std::__1::basic_string_view<char, std::__1::char_traits<char> >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
2967
2.25k
{
2968
2.25k
    dst.clear();
2969
2.25k
    transcode_valid_to_string(src, dst);
2970
2.25k
    return {};
2971
2.25k
}
scn::v3::scan_error scn::v3::impl::transcode_impl<wchar_t, char>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
2967
13.7k
{
2968
13.7k
    dst.clear();
2969
13.7k
    transcode_valid_to_string(src, dst);
2970
13.7k
    return {};
2971
13.7k
}
2972
2973
template <typename SourceCharT, typename DestCharT>
2974
scan_error transcode_if_necessary(
2975
    const contiguous_range_factory<SourceCharT>& source,
2976
    std::basic_string<DestCharT>& dest)
2977
{
2978
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
2979
        dest.assign(source.view());
2980
    }
2981
    else {
2982
        return transcode_impl(source.view(), dest);
2983
    }
2984
2985
    return {};
2986
}
2987
2988
template <typename SourceCharT, typename DestCharT>
2989
scan_error transcode_if_necessary(
2990
    contiguous_range_factory<SourceCharT>&& source,
2991
    std::basic_string<DestCharT>& dest)
2992
1.03k
{
2993
1.03k
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
2994
518
        if (source.stores_allocated_string()) {
2995
518
            dest.assign(SCN_MOVE(source.get_allocated_string()));
2996
518
        }
2997
0
        else {
2998
0
            dest.assign(source.view());
2999
0
        }
3000
    }
3001
518
    else {
3002
518
        return transcode_impl(source.view(), dest);
3003
518
    }
3004
3005
0
    return {};
3006
1.03k
}
scn::v3::scan_error scn::v3::impl::transcode_if_necessary<char, char>(scn::v3::impl::contiguous_range_factory<char>&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
2992
384
{
2993
384
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
2994
384
        if (source.stores_allocated_string()) {
2995
384
            dest.assign(SCN_MOVE(source.get_allocated_string()));
2996
384
        }
2997
0
        else {
2998
0
            dest.assign(source.view());
2999
0
        }
3000
    }
3001
    else {
3002
        return transcode_impl(source.view(), dest);
3003
    }
3004
3005
384
    return {};
3006
384
}
scn::v3::scan_error scn::v3::impl::transcode_if_necessary<char, wchar_t>(scn::v3::impl::contiguous_range_factory<char>&&, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
2992
384
{
2993
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
2994
        if (source.stores_allocated_string()) {
2995
            dest.assign(SCN_MOVE(source.get_allocated_string()));
2996
        }
2997
        else {
2998
            dest.assign(source.view());
2999
        }
3000
    }
3001
384
    else {
3002
384
        return transcode_impl(source.view(), dest);
3003
384
    }
3004
3005
0
    return {};
3006
384
}
scn::v3::scan_error scn::v3::impl::transcode_if_necessary<wchar_t, char>(scn::v3::impl::contiguous_range_factory<wchar_t>&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
2992
134
{
2993
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
2994
        if (source.stores_allocated_string()) {
2995
            dest.assign(SCN_MOVE(source.get_allocated_string()));
2996
        }
2997
        else {
2998
            dest.assign(source.view());
2999
        }
3000
    }
3001
134
    else {
3002
134
        return transcode_impl(source.view(), dest);
3003
134
    }
3004
3005
0
    return {};
3006
134
}
scn::v3::scan_error scn::v3::impl::transcode_if_necessary<wchar_t, wchar_t>(scn::v3::impl::contiguous_range_factory<wchar_t>&&, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
2992
134
{
2993
134
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
2994
134
        if (source.stores_allocated_string()) {
2995
134
            dest.assign(SCN_MOVE(source.get_allocated_string()));
2996
134
        }
2997
0
        else {
2998
0
            dest.assign(source.view());
2999
0
        }
3000
    }
3001
    else {
3002
        return transcode_impl(source.view(), dest);
3003
    }
3004
3005
134
    return {};
3006
134
}
3007
3008
template <typename SourceCharT, typename DestCharT>
3009
scan_error transcode_if_necessary(string_view_wrapper<SourceCharT> source,
3010
                                  std::basic_string<DestCharT>& dest)
3011
30.9k
{
3012
30.9k
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3013
15.4k
        dest.assign(source.view());
3014
    }
3015
15.4k
    else {
3016
15.4k
        return transcode_impl(source.view(), dest);
3017
15.4k
    }
3018
3019
0
    return {};
3020
30.9k
}
scn::v3::scan_error scn::v3::impl::transcode_if_necessary<char, char>(scn::v3::impl::string_view_wrapper<char>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
3011
1.87k
{
3012
1.87k
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3013
1.87k
        dest.assign(source.view());
3014
    }
3015
    else {
3016
        return transcode_impl(source.view(), dest);
3017
    }
3018
3019
1.87k
    return {};
3020
1.87k
}
scn::v3::scan_error scn::v3::impl::transcode_if_necessary<char, wchar_t>(scn::v3::impl::string_view_wrapper<char>, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
3011
1.87k
{
3012
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3013
        dest.assign(source.view());
3014
    }
3015
1.87k
    else {
3016
1.87k
        return transcode_impl(source.view(), dest);
3017
1.87k
    }
3018
3019
0
    return {};
3020
1.87k
}
scn::v3::scan_error scn::v3::impl::transcode_if_necessary<wchar_t, char>(scn::v3::impl::string_view_wrapper<wchar_t>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
3011
13.6k
{
3012
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3013
        dest.assign(source.view());
3014
    }
3015
13.6k
    else {
3016
13.6k
        return transcode_impl(source.view(), dest);
3017
13.6k
    }
3018
3019
0
    return {};
3020
13.6k
}
scn::v3::scan_error scn::v3::impl::transcode_if_necessary<wchar_t, wchar_t>(scn::v3::impl::string_view_wrapper<wchar_t>, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
3011
13.6k
{
3012
13.6k
    if constexpr (std::is_same_v<SourceCharT, DestCharT>) {
3013
13.6k
        dest.assign(source.view());
3014
    }
3015
    else {
3016
        return transcode_impl(source.view(), dest);
3017
    }
3018
3019
13.6k
    return {};
3020
13.6k
}
3021
3022
/////////////////////////////////////////////////////////////////
3023
// Reader base classes etc.
3024
/////////////////////////////////////////////////////////////////
3025
3026
template <typename Derived, typename CharT>
3027
class reader_base {
3028
public:
3029
    using char_type = CharT;
3030
3031
    constexpr reader_base() = default;
3032
3033
    bool skip_ws_before_read() const
3034
59.5k
    {
3035
59.5k
        return true;
3036
59.5k
    }
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_int<char>, char>::skip_ws_before_read() const
Line
Count
Source
3034
2.44k
    {
3035
2.44k
        return true;
3036
2.44k
    }
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_float<char>, char>::skip_ws_before_read() const
Line
Count
Source
3034
1.22k
    {
3035
1.22k
        return true;
3036
1.22k
    }
Unexecuted instantiation: scn::v3::impl::reader_base<scn::v3::impl::regex_matches_reader<char>, char>::skip_ws_before_read() const
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_int<wchar_t>, wchar_t>::skip_ws_before_read() const
Line
Count
Source
3034
27.2k
    {
3035
27.2k
        return true;
3036
27.2k
    }
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_float<wchar_t>, wchar_t>::skip_ws_before_read() const
Line
Count
Source
3034
13.5k
    {
3035
13.5k
        return true;
3036
13.5k
    }
Unexecuted instantiation: scn::v3::impl::reader_base<scn::v3::impl::regex_matches_reader<wchar_t>, wchar_t>::skip_ws_before_read() const
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_bool<char>, char>::skip_ws_before_read() const
Line
Count
Source
3034
1.43k
    {
3035
1.43k
        return true;
3036
1.43k
    }
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_bool<wchar_t>, wchar_t>::skip_ws_before_read() const
Line
Count
Source
3034
13.6k
    {
3035
13.6k
        return true;
3036
13.6k
    }
3037
3038
    scan_error check_specs(const detail::format_specs& specs)
3039
73.0k
    {
3040
73.0k
        reader_error_handler eh{};
3041
73.0k
        get_derived().check_specs_impl(specs, eh);
3042
73.0k
        if (SCN_UNLIKELY(!eh)) {
3043
37.8k
            return {scan_error::invalid_format_string, eh.m_msg};
3044
37.8k
        }
3045
35.2k
        return {};
3046
73.0k
    }
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_int<char>, char>::check_specs(scn::v3::detail::format_specs const&)
Line
Count
Source
3039
14.3k
    {
3040
14.3k
        reader_error_handler eh{};
3041
14.3k
        get_derived().check_specs_impl(specs, eh);
3042
14.3k
        if (SCN_UNLIKELY(!eh)) {
3043
13.1k
            return {scan_error::invalid_format_string, eh.m_msg};
3044
13.1k
        }
3045
1.17k
        return {};
3046
14.3k
    }
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_float<char>, char>::check_specs(scn::v3::detail::format_specs const&)
Line
Count
Source
3039
7.17k
    {
3040
7.17k
        reader_error_handler eh{};
3041
7.17k
        get_derived().check_specs_impl(specs, eh);
3042
7.17k
        if (SCN_UNLIKELY(!eh)) {
3043
6.59k
            return {scan_error::invalid_format_string, eh.m_msg};
3044
6.59k
        }
3045
586
        return {};
3046
7.17k
    }
scn::v3::impl::reader_base<scn::v3::impl::string_reader<char>, char>::check_specs(scn::v3::detail::format_specs const&)
Line
Count
Source
3039
21.3k
    {
3040
21.3k
        reader_error_handler eh{};
3041
21.3k
        get_derived().check_specs_impl(specs, eh);
3042
21.3k
        if (SCN_UNLIKELY(!eh)) {
3043
378
            return {scan_error::invalid_format_string, eh.m_msg};
3044
378
        }
3045
21.0k
        return {};
3046
21.3k
    }
Unexecuted instantiation: scn::v3::impl::reader_base<scn::v3::impl::regex_matches_reader<char>, char>::check_specs(scn::v3::detail::format_specs const&)
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_int<wchar_t>, wchar_t>::check_specs(scn::v3::detail::format_specs const&)
Line
Count
Source
3039
6.59k
    {
3040
6.59k
        reader_error_handler eh{};
3041
6.59k
        get_derived().check_specs_impl(specs, eh);
3042
6.59k
        if (SCN_UNLIKELY(!eh)) {
3043
5.55k
            return {scan_error::invalid_format_string, eh.m_msg};
3044
5.55k
        }
3045
1.04k
        return {};
3046
6.59k
    }
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_float<wchar_t>, wchar_t>::check_specs(scn::v3::detail::format_specs const&)
Line
Count
Source
3039
3.29k
    {
3040
3.29k
        reader_error_handler eh{};
3041
3.29k
        get_derived().check_specs_impl(specs, eh);
3042
3.29k
        if (SCN_UNLIKELY(!eh)) {
3043
2.80k
            return {scan_error::invalid_format_string, eh.m_msg};
3044
2.80k
        }
3045
492
        return {};
3046
3.29k
    }
scn::v3::impl::reader_base<scn::v3::impl::string_reader<wchar_t>, wchar_t>::check_specs(scn::v3::detail::format_specs const&)
Line
Count
Source
3039
9.75k
    {
3040
9.75k
        reader_error_handler eh{};
3041
9.75k
        get_derived().check_specs_impl(specs, eh);
3042
9.75k
        if (SCN_UNLIKELY(!eh)) {
3043
234
            return {scan_error::invalid_format_string, eh.m_msg};
3044
234
        }
3045
9.52k
        return {};
3046
9.75k
    }
Unexecuted instantiation: scn::v3::impl::reader_base<scn::v3::impl::regex_matches_reader<wchar_t>, wchar_t>::check_specs(scn::v3::detail::format_specs const&)
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_bool<char>, char>::check_specs(scn::v3::detail::format_specs const&)
Line
Count
Source
3039
7.17k
    {
3040
7.17k
        reader_error_handler eh{};
3041
7.17k
        get_derived().check_specs_impl(specs, eh);
3042
7.17k
        if (SCN_UNLIKELY(!eh)) {
3043
6.38k
            return {scan_error::invalid_format_string, eh.m_msg};
3044
6.38k
        }
3045
796
        return {};
3046
7.17k
    }
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_bool<wchar_t>, wchar_t>::check_specs(scn::v3::detail::format_specs const&)
Line
Count
Source
3039
3.29k
    {
3040
3.29k
        reader_error_handler eh{};
3041
3.29k
        get_derived().check_specs_impl(specs, eh);
3042
3.29k
        if (SCN_UNLIKELY(!eh)) {
3043
2.69k
            return {scan_error::invalid_format_string, eh.m_msg};
3044
2.69k
        }
3045
602
        return {};
3046
3.29k
    }
3047
3048
private:
3049
    Derived& get_derived()
3050
73.0k
    {
3051
73.0k
        return static_cast<Derived&>(*this);
3052
73.0k
    }
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_int<char>, char>::get_derived()
Line
Count
Source
3050
14.3k
    {
3051
14.3k
        return static_cast<Derived&>(*this);
3052
14.3k
    }
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_float<char>, char>::get_derived()
Line
Count
Source
3050
7.17k
    {
3051
7.17k
        return static_cast<Derived&>(*this);
3052
7.17k
    }
scn::v3::impl::reader_base<scn::v3::impl::string_reader<char>, char>::get_derived()
Line
Count
Source
3050
21.3k
    {
3051
21.3k
        return static_cast<Derived&>(*this);
3052
21.3k
    }
Unexecuted instantiation: scn::v3::impl::reader_base<scn::v3::impl::regex_matches_reader<char>, char>::get_derived()
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_int<wchar_t>, wchar_t>::get_derived()
Line
Count
Source
3050
6.59k
    {
3051
6.59k
        return static_cast<Derived&>(*this);
3052
6.59k
    }
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_float<wchar_t>, wchar_t>::get_derived()
Line
Count
Source
3050
3.29k
    {
3051
3.29k
        return static_cast<Derived&>(*this);
3052
3.29k
    }
scn::v3::impl::reader_base<scn::v3::impl::string_reader<wchar_t>, wchar_t>::get_derived()
Line
Count
Source
3050
9.75k
    {
3051
9.75k
        return static_cast<Derived&>(*this);
3052
9.75k
    }
Unexecuted instantiation: scn::v3::impl::reader_base<scn::v3::impl::regex_matches_reader<wchar_t>, wchar_t>::get_derived()
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_bool<char>, char>::get_derived()
Line
Count
Source
3050
7.17k
    {
3051
7.17k
        return static_cast<Derived&>(*this);
3052
7.17k
    }
scn::v3::impl::reader_base<scn::v3::impl::reader_impl_for_bool<wchar_t>, wchar_t>::get_derived()
Line
Count
Source
3050
3.29k
    {
3051
3.29k
        return static_cast<Derived&>(*this);
3052
3.29k
    }
3053
    const Derived& get_derived() const
3054
    {
3055
        return static_cast<const Derived&>(*this);
3056
    }
3057
};
3058
3059
template <typename CharT>
3060
class reader_impl_for_monostate {
3061
public:
3062
    constexpr reader_impl_for_monostate() = default;
3063
3064
    bool skip_ws_before_read() const
3065
0
    {
3066
0
        return true;
3067
0
    }
Unexecuted instantiation: scn::v3::impl::reader_impl_for_monostate<char>::skip_ws_before_read() const
Unexecuted instantiation: scn::v3::impl::reader_impl_for_monostate<wchar_t>::skip_ws_before_read() const
3068
3069
    static scan_error check_specs(const detail::format_specs&)
3070
0
    {
3071
0
        SCN_EXPECT(false);
3072
0
        SCN_UNREACHABLE;
3073
0
    }
Unexecuted instantiation: scn::v3::impl::reader_impl_for_monostate<char>::check_specs(scn::v3::detail::format_specs const&)
Unexecuted instantiation: scn::v3::impl::reader_impl_for_monostate<wchar_t>::check_specs(scn::v3::detail::format_specs const&)
3074
3075
    template <typename Range>
3076
    auto read_default(Range, monostate&, detail::locale_ref)
3077
        -> scan_expected<ranges::const_iterator_t<Range>>
3078
0
    {
3079
0
        SCN_EXPECT(false);
3080
0
        SCN_UNREACHABLE;
3081
0
    }
Unexecuted instantiation: _ZN3scn2v34impl25reader_impl_for_monostateIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS0_9monostateENS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl25reader_impl_for_monostateIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS0_9monostateENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl25reader_impl_for_monostateIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS0_9monostateENS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl25reader_impl_for_monostateIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS0_9monostateENS9_10locale_refE
3082
3083
    template <typename Range>
3084
    auto read_specs(Range,
3085
                    const detail::format_specs&,
3086
                    monostate&,
3087
                    detail::locale_ref)
3088
        -> scan_expected<ranges::const_iterator_t<Range>>
3089
0
    {
3090
0
        SCN_EXPECT(false);
3091
0
        SCN_UNREACHABLE;
3092
0
    }
Unexecuted instantiation: _ZN3scn2v34impl25reader_impl_for_monostateIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNS0_9monostateENSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl25reader_impl_for_monostateIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNS0_9monostateENSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl25reader_impl_for_monostateIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNS0_9monostateENSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl25reader_impl_for_monostateIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNS0_9monostateENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl25reader_impl_for_monostateIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNS0_9monostateENSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl25reader_impl_for_monostateIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNS0_9monostateENSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl25reader_impl_for_monostateIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNS0_9monostateENSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl25reader_impl_for_monostateIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNS0_9monostateENS9_10locale_refE
3093
};
3094
3095
/////////////////////////////////////////////////////////////////
3096
// Numeric reader support
3097
/////////////////////////////////////////////////////////////////
3098
3099
enum class sign_type { default_sign = -1, minus_sign = 0, plus_sign = 1 };
3100
3101
inline constexpr std::array<uint8_t, 256> char_to_int_table = {
3102
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3103
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3104
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3105
    255, 255, 255, 0,   1,   2,   3,   4,   5,   6,   7,   8,   9,   255, 255,
3106
    255, 255, 255, 255, 255, 10,  11,  12,  13,  14,  15,  16,  17,  18,  19,
3107
    20,  21,  22,  23,  24,  25,  26,  27,  28,  29,  30,  31,  32,  33,  34,
3108
    35,  255, 255, 255, 255, 255, 255, 10,  11,  12,  13,  14,  15,  16,  17,
3109
    18,  19,  20,  21,  22,  23,  24,  25,  26,  27,  28,  29,  30,  31,  32,
3110
    33,  34,  35,  255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3111
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3112
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3113
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3114
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3115
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3116
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3117
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3118
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
3119
    255};
3120
3121
SCN_NODISCARD SCN_FORCE_INLINE constexpr uint8_t char_to_int(char ch)
3122
103k
{
3123
103k
    return char_to_int_table[static_cast<unsigned char>(ch)];
3124
103k
}
3125
SCN_NODISCARD SCN_FORCE_INLINE constexpr uint8_t char_to_int(wchar_t ch)
3126
95.1k
{
3127
95.1k
#if WCHAR_MIN < 0
3128
95.1k
    if (ch >= 0 && ch <= 255) {
3129
#else
3130
    if (ch <= 255) {
3131
#endif
3132
95.1k
        return char_to_int(static_cast<char>(ch));
3133
95.1k
    }
3134
0
    return 255;
3135
95.1k
}
3136
3137
template <typename Range>
3138
auto parse_numeric_sign(Range range)
3139
    -> eof_expected<std::pair<ranges::const_iterator_t<Range>, sign_type>>
3140
59.1k
{
3141
59.1k
    auto r = read_one_of_code_unit(range, "+-");
3142
59.1k
    if (!r) {
3143
59.1k
        if (r.error() == parse_error::error) {
3144
59.1k
            return std::pair{range.begin(), sign_type::default_sign};
3145
59.1k
        }
3146
0
        return unexpected(eof_error::eof);
3147
59.1k
    }
3148
3149
0
    auto& it = *r;
3150
0
    if (*range.begin() == '-') {
3151
0
        return std::pair{it, sign_type::minus_sign};
3152
0
    }
3153
0
    return std::pair{it, sign_type::plus_sign};
3154
0
}
Unexecuted instantiation: _ZN3scn2v34impl18parse_numeric_signINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSG_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESJ_
Unexecuted instantiation: _ZN3scn2v34impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESH_
_ZN3scn2v34impl18parse_numeric_signINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESG_
Line
Count
Source
3140
1.08k
{
3141
1.08k
    auto r = read_one_of_code_unit(range, "+-");
3142
1.08k
    if (!r) {
3143
1.08k
        if (r.error() == parse_error::error) {
3144
1.08k
            return std::pair{range.begin(), sign_type::default_sign};
3145
1.08k
        }
3146
0
        return unexpected(eof_error::eof);
3147
1.08k
    }
3148
3149
0
    auto& it = *r;
3150
0
    if (*range.begin() == '-') {
3151
0
        return std::pair{it, sign_type::minus_sign};
3152
0
    }
3153
0
    return std::pair{it, sign_type::plus_sign};
3154
0
}
_ZN3scn2v34impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSB_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESE_
Line
Count
Source
3140
3.67k
{
3141
3.67k
    auto r = read_one_of_code_unit(range, "+-");
3142
3.67k
    if (!r) {
3143
3.67k
        if (r.error() == parse_error::error) {
3144
3.67k
            return std::pair{range.begin(), sign_type::default_sign};
3145
3.67k
        }
3146
0
        return unexpected(eof_error::eof);
3147
3.67k
    }
3148
3149
0
    auto& it = *r;
3150
0
    if (*range.begin() == '-') {
3151
0
        return std::pair{it, sign_type::minus_sign};
3152
0
    }
3153
0
    return std::pair{it, sign_type::plus_sign};
3154
0
}
Unexecuted instantiation: _ZN3scn2v34impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSM_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESP_
Unexecuted instantiation: _ZN3scn2v34impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSJ_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESM_
Unexecuted instantiation: _ZN3scn2v34impl18parse_numeric_signINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSG_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESJ_
Unexecuted instantiation: _ZN3scn2v34impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESH_
_ZN3scn2v34impl18parse_numeric_signINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESG_
Line
Count
Source
3140
600
{
3141
600
    auto r = read_one_of_code_unit(range, "+-");
3142
600
    if (!r) {
3143
600
        if (r.error() == parse_error::error) {
3144
600
            return std::pair{range.begin(), sign_type::default_sign};
3145
600
        }
3146
0
        return unexpected(eof_error::eof);
3147
600
    }
3148
3149
0
    auto& it = *r;
3150
0
    if (*range.begin() == '-') {
3151
0
        return std::pair{it, sign_type::minus_sign};
3152
0
    }
3153
0
    return std::pair{it, sign_type::plus_sign};
3154
0
}
_ZN3scn2v34impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSB_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESE_
Line
Count
Source
3140
53.7k
{
3141
53.7k
    auto r = read_one_of_code_unit(range, "+-");
3142
53.7k
    if (!r) {
3143
53.7k
        if (r.error() == parse_error::error) {
3144
53.7k
            return std::pair{range.begin(), sign_type::default_sign};
3145
53.7k
        }
3146
0
        return unexpected(eof_error::eof);
3147
53.7k
    }
3148
3149
0
    auto& it = *r;
3150
0
    if (*range.begin() == '-') {
3151
0
        return std::pair{it, sign_type::minus_sign};
3152
0
    }
3153
0
    return std::pair{it, sign_type::plus_sign};
3154
0
}
Unexecuted instantiation: _ZN3scn2v34impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSM_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESP_
Unexecuted instantiation: _ZN3scn2v34impl18parse_numeric_signINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_12eof_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSJ_9add_constIT_E4typeEEEEENS1_9sign_typeEEEEESM_
3155
3156
inline void transform_thsep_indices(std::string& indices,
3157
                                    std::ptrdiff_t last_thsep_index)
3158
0
{
3159
0
    for (auto thsep_it = indices.rbegin(); thsep_it != indices.rend();
3160
0
         ++thsep_it) {
3161
0
        const auto tmp = *thsep_it;
3162
0
        *thsep_it = static_cast<char>(last_thsep_index - tmp - 1);
3163
0
        last_thsep_index = static_cast<std::ptrdiff_t>(tmp);
3164
0
    }
3165
0
    indices.insert(indices.begin(), static_cast<char>(last_thsep_index));
3166
0
}
3167
3168
template <typename Range>
3169
bool check_thsep_grouping_impl(Range range,
3170
                               std::string& thsep_indices,
3171
                               std::string_view grouping)
3172
0
{
3173
0
    transform_thsep_indices(thsep_indices,
3174
0
                            ranges::distance(range.begin(), range.end()));
3175
3176
0
    auto thsep_it = thsep_indices.rbegin();
3177
0
    for (auto grouping_it = grouping.begin();
3178
0
         grouping_it != grouping.end() && thsep_it != thsep_indices.rend() - 1;
3179
0
         ++grouping_it, (void)++thsep_it) {
3180
0
        if (*thsep_it != *grouping_it) {
3181
0
            return false;
3182
0
        }
3183
0
    }
3184
3185
0
    SCN_CLANG_PUSH
3186
    // false positive
3187
0
    SCN_CLANG_IGNORE("-Wzero-as-null-pointer-constant")
3188
3189
0
    for (; thsep_it < thsep_indices.rend() - 1; ++thsep_it) {
3190
0
        if (*thsep_it != grouping.back()) {
3191
0
            return false;
3192
0
        }
3193
0
    }
3194
3195
0
    if (thsep_it == thsep_indices.rend() - 1) {
3196
0
        if (*thsep_it > grouping.back()) {
3197
0
            return false;
3198
0
        }
3199
0
    }
3200
3201
0
    SCN_CLANG_POP
3202
3203
0
    return true;
3204
0
}
Unexecuted instantiation: bool scn::v3::impl::check_thsep_grouping_impl<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Unexecuted instantiation: bool scn::v3::impl::check_thsep_grouping_impl<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::detail::basic_scan_buffer<char>::forward_iterator> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::detail::basic_scan_buffer<char>::forward_iterator>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Unexecuted instantiation: bool scn::v3::impl::check_thsep_grouping_impl<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Unexecuted instantiation: bool scn::v3::impl::check_thsep_grouping_impl<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Unexecuted instantiation: bool scn::v3::impl::check_thsep_grouping_impl<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Unexecuted instantiation: bool scn::v3::impl::check_thsep_grouping_impl<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Unexecuted instantiation: bool scn::v3::impl::check_thsep_grouping_impl<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Unexecuted instantiation: bool scn::v3::impl::check_thsep_grouping_impl<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
3205
3206
template <typename Range>
3207
scan_error check_thsep_grouping(Range range,
3208
                                std::string thsep_indices,
3209
                                std::string_view grouping)
3210
0
{
3211
0
    SCN_EXPECT(!thsep_indices.empty());
3212
3213
0
    if (!check_thsep_grouping_impl(range, thsep_indices, grouping)) {
3214
0
        SCN_UNLIKELY_ATTR
3215
0
        return {scan_error::invalid_scanned_value,
3216
0
                "Invalid thousands separator grouping"};
3217
0
    }
3218
3219
0
    return {};
3220
0
}
Unexecuted instantiation: scn::v3::scan_error scn::v3::impl::check_thsep_grouping<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Unexecuted instantiation: scn::v3::scan_error scn::v3::impl::check_thsep_grouping<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::detail::basic_scan_buffer<char>::forward_iterator> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::detail::basic_scan_buffer<char>::forward_iterator>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Unexecuted instantiation: scn::v3::scan_error scn::v3::impl::check_thsep_grouping<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Unexecuted instantiation: scn::v3::scan_error scn::v3::impl::check_thsep_grouping<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >(scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Unexecuted instantiation: scn::v3::scan_error scn::v3::impl::check_thsep_grouping<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Unexecuted instantiation: scn::v3::scan_error scn::v3::impl::check_thsep_grouping<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Unexecuted instantiation: scn::v3::scan_error scn::v3::impl::check_thsep_grouping<scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> > >(scn::v3::ranges::detail::subrange_::subrange<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
Unexecuted instantiation: scn::v3::scan_error scn::v3::impl::check_thsep_grouping<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string_view<char, std::__1::char_traits<char> >)
3221
3222
template <typename CharT>
3223
class numeric_reader {
3224
public:
3225
    contiguous_range_factory<CharT> m_buffer{};
3226
};
3227
3228
/////////////////////////////////////////////////////////////////
3229
// Integer reader
3230
/////////////////////////////////////////////////////////////////
3231
3232
template <typename Iterator>
3233
struct parse_integer_prefix_result {
3234
    SCN_NO_UNIQUE_ADDRESS Iterator iterator;
3235
    int parsed_base{0};
3236
    sign_type sign{sign_type::default_sign};
3237
    bool is_zero{false};
3238
};
3239
3240
template <typename Range>
3241
auto parse_integer_bin_base_prefix(Range range)
3242
    -> parse_expected<ranges::const_iterator_t<Range>>
3243
112
{
3244
112
    return read_matching_string_classic_nocase(range, "0b");
3245
112
}
Unexecuted instantiation: _ZN3scn2v34impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_
Unexecuted instantiation: _ZN3scn2v34impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_
_ZN3scn2v34impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_
Line
Count
Source
3243
34
{
3244
34
    return read_matching_string_classic_nocase(range, "0b");
3245
34
}
_ZN3scn2v34impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_
Line
Count
Source
3243
22
{
3244
22
    return read_matching_string_classic_nocase(range, "0b");
3245
22
}
Unexecuted instantiation: _ZN3scn2v34impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_
Unexecuted instantiation: _ZN3scn2v34impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_
_ZN3scn2v34impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_
Line
Count
Source
3243
28
{
3244
28
    return read_matching_string_classic_nocase(range, "0b");
3245
28
}
_ZN3scn2v34impl29parse_integer_bin_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_
Line
Count
Source
3243
28
{
3244
28
    return read_matching_string_classic_nocase(range, "0b");
3245
28
}
3246
3247
template <typename Range>
3248
auto parse_integer_hex_base_prefix(Range range)
3249
    -> parse_expected<ranges::const_iterator_t<Range>>
3250
14.7k
{
3251
14.7k
    return read_matching_string_classic_nocase(range, "0x");
3252
14.7k
}
Unexecuted instantiation: _ZN3scn2v34impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_
Unexecuted instantiation: _ZN3scn2v34impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_
_ZN3scn2v34impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_
Line
Count
Source
3250
282
{
3251
282
    return read_matching_string_classic_nocase(range, "0x");
3252
282
}
_ZN3scn2v34impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_
Line
Count
Source
3250
914
{
3251
914
    return read_matching_string_classic_nocase(range, "0x");
3252
914
}
Unexecuted instantiation: _ZN3scn2v34impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_
Unexecuted instantiation: _ZN3scn2v34impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_
_ZN3scn2v34impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_
Line
Count
Source
3250
154
{
3251
154
    return read_matching_string_classic_nocase(range, "0x");
3252
154
}
_ZN3scn2v34impl29parse_integer_hex_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_
Line
Count
Source
3250
13.4k
{
3251
13.4k
    return read_matching_string_classic_nocase(range, "0x");
3252
13.4k
}
3253
3254
template <typename Range>
3255
auto parse_integer_oct_base_prefix(Range range, bool& zero_parsed)
3256
    -> parse_expected<ranges::const_iterator_t<Range>>
3257
148
{
3258
148
    if (auto r = read_matching_string_classic_nocase(range, "0o")) {
3259
0
        return *r;
3260
0
    }
3261
3262
148
    if (auto r = read_matching_code_unit(range, '0')) {
3263
0
        zero_parsed = true;
3264
0
        return *r;
3265
0
    }
3266
3267
148
    return unexpected(parse_error::error);
3268
148
}
Unexecuted instantiation: _ZN3scn2v34impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_Rb
Unexecuted instantiation: _ZN3scn2v34impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
_ZN3scn2v34impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_Rb
Line
Count
Source
3257
34
{
3258
34
    if (auto r = read_matching_string_classic_nocase(range, "0o")) {
3259
0
        return *r;
3260
0
    }
3261
3262
34
    if (auto r = read_matching_code_unit(range, '0')) {
3263
0
        zero_parsed = true;
3264
0
        return *r;
3265
0
    }
3266
3267
34
    return unexpected(parse_error::error);
3268
34
}
_ZN3scn2v34impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_Rb
Line
Count
Source
3257
50
{
3258
50
    if (auto r = read_matching_string_classic_nocase(range, "0o")) {
3259
0
        return *r;
3260
0
    }
3261
3262
50
    if (auto r = read_matching_code_unit(range, '0')) {
3263
0
        zero_parsed = true;
3264
0
        return *r;
3265
0
    }
3266
3267
50
    return unexpected(parse_error::error);
3268
50
}
Unexecuted instantiation: _ZN3scn2v34impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_Rb
Unexecuted instantiation: _ZN3scn2v34impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
_ZN3scn2v34impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_Rb
Line
Count
Source
3257
38
{
3258
38
    if (auto r = read_matching_string_classic_nocase(range, "0o")) {
3259
0
        return *r;
3260
0
    }
3261
3262
38
    if (auto r = read_matching_code_unit(range, '0')) {
3263
0
        zero_parsed = true;
3264
0
        return *r;
3265
0
    }
3266
3267
38
    return unexpected(parse_error::error);
3268
38
}
_ZN3scn2v34impl29parse_integer_oct_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_14parse_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_Rb
Line
Count
Source
3257
26
{
3258
26
    if (auto r = read_matching_string_classic_nocase(range, "0o")) {
3259
0
        return *r;
3260
0
    }
3261
3262
26
    if (auto r = read_matching_code_unit(range, '0')) {
3263
0
        zero_parsed = true;
3264
0
        return *r;
3265
0
    }
3266
3267
26
    return unexpected(parse_error::error);
3268
26
}
3269
3270
template <typename Range>
3271
auto parse_integer_base_prefix_for_detection(Range range)
3272
    -> std::tuple<ranges::const_iterator_t<Range>, int, bool>
3273
74
{
3274
74
    if (auto r = parse_integer_hex_base_prefix(range)) {
3275
0
        return {*r, 16, false};
3276
0
    }
3277
74
    if (auto r = parse_integer_bin_base_prefix(range)) {
3278
0
        return {*r, 2, false};
3279
0
    }
3280
74
    {
3281
74
        bool zero_parsed{false};
3282
74
        if (auto r = parse_integer_oct_base_prefix(range, zero_parsed)) {
3283
0
            return {*r, 8, zero_parsed};
3284
0
        }
3285
74
    }
3286
74
    return {range.begin(), 10, false};
3287
74
}
Unexecuted instantiation: _ZN3scn2v34impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSL_9add_constIT_E4typeEEEEEibEEESO_
Unexecuted instantiation: _ZN3scn2v34impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEibEEESG_
_ZN3scn2v34impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSI_9add_constIT_E4typeEEEEEibEEESL_
Line
Count
Source
3273
20
{
3274
20
    if (auto r = parse_integer_hex_base_prefix(range)) {
3275
0
        return {*r, 16, false};
3276
0
    }
3277
20
    if (auto r = parse_integer_bin_base_prefix(range)) {
3278
0
        return {*r, 2, false};
3279
0
    }
3280
20
    {
3281
20
        bool zero_parsed{false};
3282
20
        if (auto r = parse_integer_oct_base_prefix(range, zero_parsed)) {
3283
0
            return {*r, 8, zero_parsed};
3284
0
        }
3285
20
    }
3286
20
    return {range.begin(), 10, false};
3287
20
}
_ZN3scn2v34impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEEibEEESD_
Line
Count
Source
3273
16
{
3274
16
    if (auto r = parse_integer_hex_base_prefix(range)) {
3275
0
        return {*r, 16, false};
3276
0
    }
3277
16
    if (auto r = parse_integer_bin_base_prefix(range)) {
3278
0
        return {*r, 2, false};
3279
0
    }
3280
16
    {
3281
16
        bool zero_parsed{false};
3282
16
        if (auto r = parse_integer_oct_base_prefix(range, zero_parsed)) {
3283
0
            return {*r, 8, zero_parsed};
3284
0
        }
3285
16
    }
3286
16
    return {range.begin(), 10, false};
3287
16
}
Unexecuted instantiation: _ZN3scn2v34impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSL_9add_constIT_E4typeEEEEEibEEESO_
Unexecuted instantiation: _ZN3scn2v34impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEibEEESG_
_ZN3scn2v34impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSI_9add_constIT_E4typeEEEEEibEEESL_
Line
Count
Source
3273
22
{
3274
22
    if (auto r = parse_integer_hex_base_prefix(range)) {
3275
0
        return {*r, 16, false};
3276
0
    }
3277
22
    if (auto r = parse_integer_bin_base_prefix(range)) {
3278
0
        return {*r, 2, false};
3279
0
    }
3280
22
    {
3281
22
        bool zero_parsed{false};
3282
22
        if (auto r = parse_integer_oct_base_prefix(range, zero_parsed)) {
3283
0
            return {*r, 8, zero_parsed};
3284
0
        }
3285
22
    }
3286
22
    return {range.begin(), 10, false};
3287
22
}
_ZN3scn2v34impl39parse_integer_base_prefix_for_detectionINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEEibEEESD_
Line
Count
Source
3273
16
{
3274
16
    if (auto r = parse_integer_hex_base_prefix(range)) {
3275
0
        return {*r, 16, false};
3276
0
    }
3277
16
    if (auto r = parse_integer_bin_base_prefix(range)) {
3278
0
        return {*r, 2, false};
3279
0
    }
3280
16
    {
3281
16
        bool zero_parsed{false};
3282
16
        if (auto r = parse_integer_oct_base_prefix(range, zero_parsed)) {
3283
0
            return {*r, 8, zero_parsed};
3284
0
        }
3285
16
    }
3286
16
    return {range.begin(), 10, false};
3287
16
}
3288
3289
template <typename Range>
3290
auto parse_integer_base_prefix(Range range, int base)
3291
    -> std::tuple<ranges::const_iterator_t<Range>, int, bool>
3292
44.3k
{
3293
44.3k
    switch (base) {
3294
38
        case 2:
3295
            // allow 0b/0B
3296
38
            return {apply_opt(parse_integer_bin_base_prefix(range), range), 2,
3297
38
                    false};
3298
3299
74
        case 8: {
3300
            // allow 0o/0O/0
3301
74
            bool zero_parsed = false;
3302
74
            auto it = apply_opt(
3303
74
                parse_integer_oct_base_prefix(range, zero_parsed), range);
3304
74
            return {it, 8, zero_parsed};
3305
0
        }
3306
3307
14.7k
        case 16:
3308
            // allow 0x/0X
3309
14.7k
            return {apply_opt(parse_integer_hex_base_prefix(range), range), 16,
3310
14.7k
                    false};
3311
3312
74
        case 0:
3313
            // detect base
3314
74
            return parse_integer_base_prefix_for_detection(range);
3315
3316
29.4k
        default:
3317
            // no base prefix allowed
3318
29.4k
            return {range.begin(), base, false};
3319
44.3k
    }
3320
44.3k
}
Unexecuted instantiation: _ZN3scn2v34impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSL_9add_constIT_E4typeEEEEEibEEESO_i
Unexecuted instantiation: _ZN3scn2v34impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEibEEESG_i
_ZN3scn2v34impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSI_9add_constIT_E4typeEEEEEibEEESL_i
Line
Count
Source
3292
816
{
3293
816
    switch (base) {
3294
14
        case 2:
3295
            // allow 0b/0B
3296
14
            return {apply_opt(parse_integer_bin_base_prefix(range), range), 2,
3297
14
                    false};
3298
3299
14
        case 8: {
3300
            // allow 0o/0O/0
3301
14
            bool zero_parsed = false;
3302
14
            auto it = apply_opt(
3303
14
                parse_integer_oct_base_prefix(range, zero_parsed), range);
3304
14
            return {it, 8, zero_parsed};
3305
0
        }
3306
3307
262
        case 16:
3308
            // allow 0x/0X
3309
262
            return {apply_opt(parse_integer_hex_base_prefix(range), range), 16,
3310
262
                    false};
3311
3312
20
        case 0:
3313
            // detect base
3314
20
            return parse_integer_base_prefix_for_detection(range);
3315
3316
506
        default:
3317
            // no base prefix allowed
3318
506
            return {range.begin(), base, false};
3319
816
    }
3320
816
}
_ZN3scn2v34impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEEibEEESD_i
Line
Count
Source
3292
2.74k
{
3293
2.74k
    switch (base) {
3294
6
        case 2:
3295
            // allow 0b/0B
3296
6
            return {apply_opt(parse_integer_bin_base_prefix(range), range), 2,
3297
6
                    false};
3298
3299
34
        case 8: {
3300
            // allow 0o/0O/0
3301
34
            bool zero_parsed = false;
3302
34
            auto it = apply_opt(
3303
34
                parse_integer_oct_base_prefix(range, zero_parsed), range);
3304
34
            return {it, 8, zero_parsed};
3305
0
        }
3306
3307
898
        case 16:
3308
            // allow 0x/0X
3309
898
            return {apply_opt(parse_integer_hex_base_prefix(range), range), 16,
3310
898
                    false};
3311
3312
16
        case 0:
3313
            // detect base
3314
16
            return parse_integer_base_prefix_for_detection(range);
3315
3316
1.79k
        default:
3317
            // no base prefix allowed
3318
1.79k
            return {range.begin(), base, false};
3319
2.74k
    }
3320
2.74k
}
Unexecuted instantiation: _ZN3scn2v34impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSL_9add_constIT_E4typeEEEEEibEEESO_i
Unexecuted instantiation: _ZN3scn2v34impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSD_9add_constIT_E4typeEEEEEibEEESG_i
_ZN3scn2v34impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSI_9add_constIT_E4typeEEEEEibEEESL_i
Line
Count
Source
3292
458
{
3293
458
    switch (base) {
3294
6
        case 2:
3295
            // allow 0b/0B
3296
6
            return {apply_opt(parse_integer_bin_base_prefix(range), range), 2,
3297
6
                    false};
3298
3299
16
        case 8: {
3300
            // allow 0o/0O/0
3301
16
            bool zero_parsed = false;
3302
16
            auto it = apply_opt(
3303
16
                parse_integer_oct_base_prefix(range, zero_parsed), range);
3304
16
            return {it, 8, zero_parsed};
3305
0
        }
3306
3307
132
        case 16:
3308
            // allow 0x/0X
3309
132
            return {apply_opt(parse_integer_hex_base_prefix(range), range), 16,
3310
132
                    false};
3311
3312
22
        case 0:
3313
            // detect base
3314
22
            return parse_integer_base_prefix_for_detection(range);
3315
3316
282
        default:
3317
            // no base prefix allowed
3318
282
            return {range.begin(), base, false};
3319
458
    }
3320
458
}
_ZN3scn2v34impl25parse_integer_base_prefixINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSA_9add_constIT_E4typeEEEEEibEEESD_i
Line
Count
Source
3292
40.3k
{
3293
40.3k
    switch (base) {
3294
12
        case 2:
3295
            // allow 0b/0B
3296
12
            return {apply_opt(parse_integer_bin_base_prefix(range), range), 2,
3297
12
                    false};
3298
3299
10
        case 8: {
3300
            // allow 0o/0O/0
3301
10
            bool zero_parsed = false;
3302
10
            auto it = apply_opt(
3303
10
                parse_integer_oct_base_prefix(range, zero_parsed), range);
3304
10
            return {it, 8, zero_parsed};
3305
0
        }
3306
3307
13.4k
        case 16:
3308
            // allow 0x/0X
3309
13.4k
            return {apply_opt(parse_integer_hex_base_prefix(range), range), 16,
3310
13.4k
                    false};
3311
3312
16
        case 0:
3313
            // detect base
3314
16
            return parse_integer_base_prefix_for_detection(range);
3315
3316
26.8k
        default:
3317
            // no base prefix allowed
3318
26.8k
            return {range.begin(), base, false};
3319
40.3k
    }
3320
40.3k
}
3321
3322
template <typename Range>
3323
auto parse_integer_prefix(Range range, int base) -> eof_expected<
3324
    parse_integer_prefix_result<ranges::const_iterator_t<Range>>>
3325
44.3k
{
3326
44.3k
    SCN_TRY(sign_result, parse_numeric_sign(range));
3327
44.3k
    auto [base_prefix_begin_it, sign] = sign_result;
3328
3329
44.3k
    auto [digits_begin_it, parsed_base, parsed_zero] =
3330
44.3k
        parse_integer_base_prefix(
3331
44.3k
            ranges::subrange{base_prefix_begin_it, range.end()}, base);
3332
3333
44.3k
    if (parsed_zero) {
3334
0
        if (digits_begin_it == range.end() ||
3335
0
            char_to_int(*digits_begin_it) >= 8) {
3336
0
            digits_begin_it = base_prefix_begin_it;
3337
0
        }
3338
0
        else {
3339
0
            parsed_zero = false;
3340
0
        }
3341
0
    }
3342
44.3k
    else {
3343
44.3k
        if (digits_begin_it == range.end() ||
3344
44.3k
            char_to_int(*digits_begin_it) >= parsed_base) {
3345
44.3k
            digits_begin_it = base_prefix_begin_it;
3346
44.3k
        }
3347
44.3k
    }
3348
3349
44.3k
    if (sign == sign_type::default_sign) {
3350
44.3k
        sign = sign_type::plus_sign;
3351
44.3k
    }
3352
44.3k
    return parse_integer_prefix_result<ranges::const_iterator_t<Range>>{
3353
44.3k
        digits_begin_it, parsed_base, sign, parsed_zero};
3354
44.3k
}
Unexecuted instantiation: _ZN3scn2v34impl20parse_integer_prefixINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESJ_i
Unexecuted instantiation: _ZN3scn2v34impl20parse_integer_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESH_i
_ZN3scn2v34impl20parse_integer_prefixINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESG_i
Line
Count
Source
3325
816
{
3326
816
    SCN_TRY(sign_result, parse_numeric_sign(range));
3327
816
    auto [base_prefix_begin_it, sign] = sign_result;
3328
3329
816
    auto [digits_begin_it, parsed_base, parsed_zero] =
3330
816
        parse_integer_base_prefix(
3331
816
            ranges::subrange{base_prefix_begin_it, range.end()}, base);
3332
3333
816
    if (parsed_zero) {
3334
0
        if (digits_begin_it == range.end() ||
3335
0
            char_to_int(*digits_begin_it) >= 8) {
3336
0
            digits_begin_it = base_prefix_begin_it;
3337
0
        }
3338
0
        else {
3339
0
            parsed_zero = false;
3340
0
        }
3341
0
    }
3342
816
    else {
3343
816
        if (digits_begin_it == range.end() ||
3344
816
            char_to_int(*digits_begin_it) >= parsed_base) {
3345
816
            digits_begin_it = base_prefix_begin_it;
3346
816
        }
3347
816
    }
3348
3349
816
    if (sign == sign_type::default_sign) {
3350
816
        sign = sign_type::plus_sign;
3351
816
    }
3352
816
    return parse_integer_prefix_result<ranges::const_iterator_t<Range>>{
3353
816
        digits_begin_it, parsed_base, sign, parsed_zero};
3354
816
}
_ZN3scn2v34impl20parse_integer_prefixINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESE_i
Line
Count
Source
3325
2.74k
{
3326
2.74k
    SCN_TRY(sign_result, parse_numeric_sign(range));
3327
2.74k
    auto [base_prefix_begin_it, sign] = sign_result;
3328
3329
2.74k
    auto [digits_begin_it, parsed_base, parsed_zero] =
3330
2.74k
        parse_integer_base_prefix(
3331
2.74k
            ranges::subrange{base_prefix_begin_it, range.end()}, base);
3332
3333
2.74k
    if (parsed_zero) {
3334
0
        if (digits_begin_it == range.end() ||
3335
0
            char_to_int(*digits_begin_it) >= 8) {
3336
0
            digits_begin_it = base_prefix_begin_it;
3337
0
        }
3338
0
        else {
3339
0
            parsed_zero = false;
3340
0
        }
3341
0
    }
3342
2.74k
    else {
3343
2.74k
        if (digits_begin_it == range.end() ||
3344
2.74k
            char_to_int(*digits_begin_it) >= parsed_base) {
3345
2.74k
            digits_begin_it = base_prefix_begin_it;
3346
2.74k
        }
3347
2.74k
    }
3348
3349
2.74k
    if (sign == sign_type::default_sign) {
3350
2.74k
        sign = sign_type::plus_sign;
3351
2.74k
    }
3352
2.74k
    return parse_integer_prefix_result<ranges::const_iterator_t<Range>>{
3353
2.74k
        digits_begin_it, parsed_base, sign, parsed_zero};
3354
2.74k
}
Unexecuted instantiation: _ZN3scn2v34impl20parse_integer_prefixINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESJ_i
Unexecuted instantiation: _ZN3scn2v34impl20parse_integer_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESH_i
_ZN3scn2v34impl20parse_integer_prefixINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESG_i
Line
Count
Source
3325
458
{
3326
458
    SCN_TRY(sign_result, parse_numeric_sign(range));
3327
458
    auto [base_prefix_begin_it, sign] = sign_result;
3328
3329
458
    auto [digits_begin_it, parsed_base, parsed_zero] =
3330
458
        parse_integer_base_prefix(
3331
458
            ranges::subrange{base_prefix_begin_it, range.end()}, base);
3332
3333
458
    if (parsed_zero) {
3334
0
        if (digits_begin_it == range.end() ||
3335
0
            char_to_int(*digits_begin_it) >= 8) {
3336
0
            digits_begin_it = base_prefix_begin_it;
3337
0
        }
3338
0
        else {
3339
0
            parsed_zero = false;
3340
0
        }
3341
0
    }
3342
458
    else {
3343
458
        if (digits_begin_it == range.end() ||
3344
458
            char_to_int(*digits_begin_it) >= parsed_base) {
3345
458
            digits_begin_it = base_prefix_begin_it;
3346
458
        }
3347
458
    }
3348
3349
458
    if (sign == sign_type::default_sign) {
3350
458
        sign = sign_type::plus_sign;
3351
458
    }
3352
458
    return parse_integer_prefix_result<ranges::const_iterator_t<Range>>{
3353
458
        digits_begin_it, parsed_base, sign, parsed_zero};
3354
458
}
_ZN3scn2v34impl20parse_integer_prefixINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_12eof_expectedINS1_27parse_integer_prefix_resultIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEEEESE_i
Line
Count
Source
3325
40.3k
{
3326
40.3k
    SCN_TRY(sign_result, parse_numeric_sign(range));
3327
40.3k
    auto [base_prefix_begin_it, sign] = sign_result;
3328
3329
40.3k
    auto [digits_begin_it, parsed_base, parsed_zero] =
3330
40.3k
        parse_integer_base_prefix(
3331
40.3k
            ranges::subrange{base_prefix_begin_it, range.end()}, base);
3332
3333
40.3k
    if (parsed_zero) {
3334
0
        if (digits_begin_it == range.end() ||
3335
0
            char_to_int(*digits_begin_it) >= 8) {
3336
0
            digits_begin_it = base_prefix_begin_it;
3337
0
        }
3338
0
        else {
3339
0
            parsed_zero = false;
3340
0
        }
3341
0
    }
3342
40.3k
    else {
3343
40.3k
        if (digits_begin_it == range.end() ||
3344
40.3k
            char_to_int(*digits_begin_it) >= parsed_base) {
3345
40.3k
            digits_begin_it = base_prefix_begin_it;
3346
40.3k
        }
3347
40.3k
    }
3348
3349
40.3k
    if (sign == sign_type::default_sign) {
3350
40.3k
        sign = sign_type::plus_sign;
3351
40.3k
    }
3352
40.3k
    return parse_integer_prefix_result<ranges::const_iterator_t<Range>>{
3353
40.3k
        digits_begin_it, parsed_base, sign, parsed_zero};
3354
40.3k
}
3355
3356
template <typename Range>
3357
auto parse_integer_digits_without_thsep(Range range, int base)
3358
    -> scan_expected<ranges::const_iterator_t<Range>>
3359
44.2k
{
3360
44.2k
    using char_type = detail::char_t<Range>;
3361
3362
44.2k
    if constexpr (ranges::contiguous_range<Range>) {
3363
43.0k
        if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
3364
0
            return unexpected_scan_error(
3365
0
                scan_error::invalid_scanned_value,
3366
0
                "Failed to parse integer: No digits found");
3367
0
        }
3368
43.0k
        return range.end();
3369
    }
3370
1.21k
    else {
3371
1.21k
        return read_while1_code_unit(range,
3372
1.21k
                                     [&](char_type ch) noexcept {
3373
1.21k
                                         return char_to_int(ch) < base;
3374
1.21k
                                     })
Unexecuted instantiation: _ZZN3scn2v34impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_iENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_iENKUlcE_clEc
_ZZN3scn2v34impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_iENKUlcE_clEc
Line
Count
Source
3372
796
                                     [&](char_type ch) noexcept {
3373
796
                                         return char_to_int(ch) < base;
3374
796
                                     })
Unexecuted instantiation: _ZZN3scn2v34impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_iENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_iENKUlwE_clEw
_ZZN3scn2v34impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_iENKUlwE_clEw
Line
Count
Source
3372
422
                                     [&](char_type ch) noexcept {
3373
422
                                         return char_to_int(ch) < base;
3374
422
                                     })
3375
1.21k
            .transform_error(map_parse_error_to_scan_error(
3376
1.21k
                scan_error::invalid_scanned_value,
3377
1.21k
                "Failed to parse integer: No digits found"));
3378
1.21k
    }
3379
44.2k
}
Unexecuted instantiation: _ZN3scn2v34impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_i
Unexecuted instantiation: _ZN3scn2v34impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_i
_ZN3scn2v34impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_i
Line
Count
Source
3359
796
{
3360
796
    using char_type = detail::char_t<Range>;
3361
3362
    if constexpr (ranges::contiguous_range<Range>) {
3363
        if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
3364
            return unexpected_scan_error(
3365
                scan_error::invalid_scanned_value,
3366
                "Failed to parse integer: No digits found");
3367
        }
3368
        return range.end();
3369
    }
3370
796
    else {
3371
796
        return read_while1_code_unit(range,
3372
796
                                     [&](char_type ch) noexcept {
3373
796
                                         return char_to_int(ch) < base;
3374
796
                                     })
3375
796
            .transform_error(map_parse_error_to_scan_error(
3376
796
                scan_error::invalid_scanned_value,
3377
796
                "Failed to parse integer: No digits found"));
3378
796
    }
3379
796
}
_ZN3scn2v34impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_i
Line
Count
Source
3359
2.71k
{
3360
2.71k
    using char_type = detail::char_t<Range>;
3361
3362
2.71k
    if constexpr (ranges::contiguous_range<Range>) {
3363
2.71k
        if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
3364
0
            return unexpected_scan_error(
3365
0
                scan_error::invalid_scanned_value,
3366
0
                "Failed to parse integer: No digits found");
3367
0
        }
3368
2.71k
        return range.end();
3369
    }
3370
    else {
3371
        return read_while1_code_unit(range,
3372
                                     [&](char_type ch) noexcept {
3373
                                         return char_to_int(ch) < base;
3374
                                     })
3375
            .transform_error(map_parse_error_to_scan_error(
3376
                scan_error::invalid_scanned_value,
3377
                "Failed to parse integer: No digits found"));
3378
    }
3379
2.71k
}
Unexecuted instantiation: _ZN3scn2v34impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_i
Unexecuted instantiation: _ZN3scn2v34impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_i
_ZN3scn2v34impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_i
Line
Count
Source
3359
422
{
3360
422
    using char_type = detail::char_t<Range>;
3361
3362
    if constexpr (ranges::contiguous_range<Range>) {
3363
        if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
3364
            return unexpected_scan_error(
3365
                scan_error::invalid_scanned_value,
3366
                "Failed to parse integer: No digits found");
3367
        }
3368
        return range.end();
3369
    }
3370
422
    else {
3371
422
        return read_while1_code_unit(range,
3372
422
                                     [&](char_type ch) noexcept {
3373
422
                                         return char_to_int(ch) < base;
3374
422
                                     })
3375
422
            .transform_error(map_parse_error_to_scan_error(
3376
422
                scan_error::invalid_scanned_value,
3377
422
                "Failed to parse integer: No digits found"));
3378
422
    }
3379
422
}
_ZN3scn2v34impl34parse_integer_digits_without_thsepINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_i
Line
Count
Source
3359
40.2k
{
3360
40.2k
    using char_type = detail::char_t<Range>;
3361
3362
40.2k
    if constexpr (ranges::contiguous_range<Range>) {
3363
40.2k
        if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
3364
0
            return unexpected_scan_error(
3365
0
                scan_error::invalid_scanned_value,
3366
0
                "Failed to parse integer: No digits found");
3367
0
        }
3368
40.2k
        return range.end();
3369
    }
3370
    else {
3371
        return read_while1_code_unit(range,
3372
                                     [&](char_type ch) noexcept {
3373
                                         return char_to_int(ch) < base;
3374
                                     })
3375
            .transform_error(map_parse_error_to_scan_error(
3376
                scan_error::invalid_scanned_value,
3377
                "Failed to parse integer: No digits found"));
3378
    }
3379
40.2k
}
3380
3381
template <typename Range, typename CharT>
3382
auto parse_integer_digits_with_thsep(
3383
    Range range,
3384
    int base,
3385
    const localized_number_formatting_options<CharT>& locale_options)
3386
    -> scan_expected<std::tuple<ranges::const_iterator_t<Range>,
3387
                                std::basic_string<CharT>,
3388
                                std::string>>
3389
124
{
3390
124
    std::basic_string<CharT> output;
3391
124
    std::string thsep_indices;
3392
124
    auto it = range.begin();
3393
124
    bool digit_matched = false;
3394
124
    for (; it != range.end(); ++it) {
3395
124
        if (*it == locale_options.thousands_sep) {
3396
0
            thsep_indices.push_back(
3397
0
                static_cast<char>(ranges::distance(range.begin(), it)));
3398
0
        }
3399
124
        else if (char_to_int(*it) >= base) {
3400
124
            break;
3401
124
        }
3402
0
        else {
3403
0
            output.push_back(*it);
3404
0
            digit_matched = true;
3405
0
        }
3406
124
    }
3407
124
    if (SCN_UNLIKELY(!digit_matched)) {
3408
124
        return unexpected_scan_error(
3409
124
            scan_error::invalid_scanned_value,
3410
124
            "Failed to parse integer: No digits found");
3411
124
    }
3412
0
    return std::tuple{it, output, thsep_indices};
3413
124
}
Unexecuted instantiation: _ZN3scn2v34impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEcEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSM_9add_constIT_E4typeEEEEENSM_12basic_stringIT0_NSM_11char_traitsISV_EENSM_9allocatorISV_EEEENSU_IcNSW_IcEENSY_IcEEEEEEEEESP_iRKNS1_35localized_number_formatting_optionsISV_EE
Unexecuted instantiation: _ZN3scn2v34impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEcEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEENSE_12basic_stringIT0_NSE_11char_traitsISN_EENSE_9allocatorISN_EEEENSM_IcNSO_IcEENSQ_IcEEEEEEEEESH_iRKNS1_35localized_number_formatting_optionsISN_EE
_ZN3scn2v34impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEcEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSJ_9add_constIT_E4typeEEEEENSJ_12basic_stringIT0_NSJ_11char_traitsISS_EENSJ_9allocatorISS_EEEENSR_IcNST_IcEENSV_IcEEEEEEEEESM_iRKNS1_35localized_number_formatting_optionsISS_EE
Line
Count
Source
3389
20
{
3390
20
    std::basic_string<CharT> output;
3391
20
    std::string thsep_indices;
3392
20
    auto it = range.begin();
3393
20
    bool digit_matched = false;
3394
20
    for (; it != range.end(); ++it) {
3395
20
        if (*it == locale_options.thousands_sep) {
3396
0
            thsep_indices.push_back(
3397
0
                static_cast<char>(ranges::distance(range.begin(), it)));
3398
0
        }
3399
20
        else if (char_to_int(*it) >= base) {
3400
20
            break;
3401
20
        }
3402
0
        else {
3403
0
            output.push_back(*it);
3404
0
            digit_matched = true;
3405
0
        }
3406
20
    }
3407
20
    if (SCN_UNLIKELY(!digit_matched)) {
3408
20
        return unexpected_scan_error(
3409
20
            scan_error::invalid_scanned_value,
3410
20
            "Failed to parse integer: No digits found");
3411
20
    }
3412
0
    return std::tuple{it, output, thsep_indices};
3413
20
}
_ZN3scn2v34impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEcEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSB_9add_constIT_E4typeEEEEENSB_12basic_stringIT0_NSB_11char_traitsISK_EENSB_9allocatorISK_EEEENSJ_IcNSL_IcEENSN_IcEEEEEEEEESE_iRKNS1_35localized_number_formatting_optionsISK_EE
Line
Count
Source
3389
32
{
3390
32
    std::basic_string<CharT> output;
3391
32
    std::string thsep_indices;
3392
32
    auto it = range.begin();
3393
32
    bool digit_matched = false;
3394
32
    for (; it != range.end(); ++it) {
3395
32
        if (*it == locale_options.thousands_sep) {
3396
0
            thsep_indices.push_back(
3397
0
                static_cast<char>(ranges::distance(range.begin(), it)));
3398
0
        }
3399
32
        else if (char_to_int(*it) >= base) {
3400
32
            break;
3401
32
        }
3402
0
        else {
3403
0
            output.push_back(*it);
3404
0
            digit_matched = true;
3405
0
        }
3406
32
    }
3407
32
    if (SCN_UNLIKELY(!digit_matched)) {
3408
32
        return unexpected_scan_error(
3409
32
            scan_error::invalid_scanned_value,
3410
32
            "Failed to parse integer: No digits found");
3411
32
    }
3412
0
    return std::tuple{it, output, thsep_indices};
3413
32
}
Unexecuted instantiation: _ZN3scn2v34impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEENS1_15take_width_viewINS6_ISC_SD_EEE8sentinelILb1EEEEEwEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSM_9add_constIT_E4typeEEEEENSM_12basic_stringIT0_NSM_11char_traitsISV_EENSM_9allocatorISV_EEEENSU_IcNSW_IcEENSY_IcEEEEEEEEESP_iRKNS1_35localized_number_formatting_optionsISV_EE
Unexecuted instantiation: _ZN3scn2v34impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEwEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEENSE_12basic_stringIT0_NSE_11char_traitsISN_EENSE_9allocatorISN_EEEENSM_IcNSO_IcEENSQ_IcEEEEEEEEESH_iRKNS1_35localized_number_formatting_optionsISN_EE
_ZN3scn2v34impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSA_EENS1_15take_width_viewINS6_ISA_SA_EEE8sentinelILb1EEEEEwEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSJ_9add_constIT_E4typeEEEEENSJ_12basic_stringIT0_NSJ_11char_traitsISS_EENSJ_9allocatorISS_EEEENSR_IcNST_IcEENSV_IcEEEEEEEEESM_iRKNS1_35localized_number_formatting_optionsISS_EE
Line
Count
Source
3389
36
{
3390
36
    std::basic_string<CharT> output;
3391
36
    std::string thsep_indices;
3392
36
    auto it = range.begin();
3393
36
    bool digit_matched = false;
3394
36
    for (; it != range.end(); ++it) {
3395
36
        if (*it == locale_options.thousands_sep) {
3396
0
            thsep_indices.push_back(
3397
0
                static_cast<char>(ranges::distance(range.begin(), it)));
3398
0
        }
3399
36
        else if (char_to_int(*it) >= base) {
3400
36
            break;
3401
36
        }
3402
0
        else {
3403
0
            output.push_back(*it);
3404
0
            digit_matched = true;
3405
0
        }
3406
36
    }
3407
36
    if (SCN_UNLIKELY(!digit_matched)) {
3408
36
        return unexpected_scan_error(
3409
36
            scan_error::invalid_scanned_value,
3410
36
            "Failed to parse integer: No digits found");
3411
36
    }
3412
0
    return std::tuple{it, output, thsep_indices};
3413
36
}
_ZN3scn2v34impl31parse_integer_digits_with_thsepINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEwEENS0_13scan_expectedINSt3__15tupleIJDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSB_9add_constIT_E4typeEEEEENSB_12basic_stringIT0_NSB_11char_traitsISK_EENSB_9allocatorISK_EEEENSJ_IcNSL_IcEENSN_IcEEEEEEEEESE_iRKNS1_35localized_number_formatting_optionsISK_EE
Line
Count
Source
3389
36
{
3390
36
    std::basic_string<CharT> output;
3391
36
    std::string thsep_indices;
3392
36
    auto it = range.begin();
3393
36
    bool digit_matched = false;
3394
36
    for (; it != range.end(); ++it) {
3395
36
        if (*it == locale_options.thousands_sep) {
3396
0
            thsep_indices.push_back(
3397
0
                static_cast<char>(ranges::distance(range.begin(), it)));
3398
0
        }
3399
36
        else if (char_to_int(*it) >= base) {
3400
36
            break;
3401
36
        }
3402
0
        else {
3403
0
            output.push_back(*it);
3404
0
            digit_matched = true;
3405
0
        }
3406
36
    }
3407
36
    if (SCN_UNLIKELY(!digit_matched)) {
3408
36
        return unexpected_scan_error(
3409
36
            scan_error::invalid_scanned_value,
3410
36
            "Failed to parse integer: No digits found");
3411
36
    }
3412
0
    return std::tuple{it, output, thsep_indices};
3413
36
}
3414
3415
template <typename CharT, typename T>
3416
auto parse_integer_value(std::basic_string_view<CharT> source,
3417
                         T& value,
3418
                         sign_type sign,
3419
                         int base)
3420
    -> scan_expected<typename std::basic_string_view<CharT>::iterator>;
3421
3422
template <typename T>
3423
void parse_integer_value_exhaustive_valid(std::string_view source, T& value);
3424
3425
#define SCN_DECLARE_INTEGER_READER_TEMPLATE(CharT, IntT)                    \
3426
    extern template auto parse_integer_value(                               \
3427
        std::basic_string_view<CharT> source, IntT& value, sign_type sign,  \
3428
        int base)                                                           \
3429
        -> scan_expected<typename std::basic_string_view<CharT>::iterator>; \
3430
    extern template void parse_integer_value_exhaustive_valid(              \
3431
        std::string_view, IntT&);
3432
3433
#if !SCN_DISABLE_TYPE_SCHAR
3434
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, signed char)
3435
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, signed char)
3436
#endif
3437
#if !SCN_DISABLE_TYPE_SHORT
3438
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, short)
3439
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, short)
3440
#endif
3441
#if !SCN_DISABLE_TYPE_INT
3442
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, int)
3443
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, int)
3444
#endif
3445
#if !SCN_DISABLE_TYPE_LONG
3446
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, long)
3447
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, long)
3448
#endif
3449
#if !SCN_DISABLE_TYPE_LONG_LONG
3450
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, long long)
3451
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, long long)
3452
#endif
3453
#if !SCN_DISABLE_TYPE_UCHAR
3454
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, unsigned char)
3455
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, unsigned char)
3456
#endif
3457
#if !SCN_DISABLE_TYPE_USHORT
3458
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, unsigned short)
3459
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, unsigned short)
3460
#endif
3461
#if !SCN_DISABLE_TYPE_UINT
3462
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, unsigned int)
3463
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, unsigned int)
3464
#endif
3465
#if !SCN_DISABLE_TYPE_ULONG
3466
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, unsigned long)
3467
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, unsigned long)
3468
#endif
3469
#if !SCN_DISABLE_TYPE_ULONG_LONG
3470
SCN_DECLARE_INTEGER_READER_TEMPLATE(char, unsigned long long)
3471
SCN_DECLARE_INTEGER_READER_TEMPLATE(wchar_t, unsigned long long)
3472
#endif
3473
3474
#undef SCN_DECLARE_INTEGER_READER_TEMPLATE
3475
3476
template <typename CharT>
3477
class reader_impl_for_int
3478
    : public reader_base<reader_impl_for_int<CharT>, CharT> {
3479
public:
3480
    constexpr reader_impl_for_int() = default;
3481
3482
    void check_specs_impl(const detail::format_specs& specs,
3483
                          reader_error_handler& eh)
3484
20.9k
    {
3485
20.9k
        detail::check_int_type_specs(specs, eh);
3486
20.9k
    }
scn::v3::impl::reader_impl_for_int<char>::check_specs_impl(scn::v3::detail::format_specs const&, scn::v3::impl::reader_error_handler&)
Line
Count
Source
3484
14.3k
    {
3485
14.3k
        detail::check_int_type_specs(specs, eh);
3486
14.3k
    }
scn::v3::impl::reader_impl_for_int<wchar_t>::check_specs_impl(scn::v3::detail::format_specs const&, scn::v3::impl::reader_error_handler&)
Line
Count
Source
3484
6.59k
    {
3485
6.59k
        detail::check_int_type_specs(specs, eh);
3486
6.59k
    }
3487
3488
    template <typename Range, typename T>
3489
    auto read_default_with_base(Range range, T& value, int base)
3490
        -> scan_expected<ranges::const_iterator_t<Range>>
3491
27.4k
    {
3492
27.4k
        SCN_TRY(prefix_result, parse_integer_prefix(range, base)
3493
27.4k
                                   .transform_error(make_eof_scan_error));
3494
3495
27.4k
        if constexpr (!std::is_signed_v<T>) {
3496
13.7k
            if (prefix_result.sign == sign_type::minus_sign) {
3497
0
                return unexpected_scan_error(
3498
0
                    scan_error::invalid_scanned_value,
3499
0
                    "Unexpected '-' sign when parsing an "
3500
0
                    "unsigned value");
3501
0
            }
3502
13.7k
        }
3503
3504
27.4k
        if (prefix_result.is_zero) {
3505
0
            value = T{0};
3506
0
            return std::next(prefix_result.iterator);
3507
0
        }
3508
3509
54.8k
        SCN_TRY(after_digits_it,
3510
54.8k
                parse_integer_digits_without_thsep(
3511
54.8k
                    ranges::subrange{prefix_result.iterator, range.end()},
3512
54.8k
                    prefix_result.parsed_base));
3513
3514
54.8k
        auto buf = make_contiguous_buffer(
3515
54.8k
            ranges::subrange{prefix_result.iterator, after_digits_it});
3516
54.8k
        SCN_TRY(result_it,
3517
0
                parse_integer_value(buf.view(), value, prefix_result.sign,
3518
0
                                    prefix_result.parsed_base));
3519
3520
0
        return ranges::next(prefix_result.iterator,
3521
0
                            ranges::distance(buf.view().begin(), result_it));
3522
54.8k
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
_ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Line
Count
Source
3491
13.0k
    {
3492
13.0k
        SCN_TRY(prefix_result, parse_integer_prefix(range, base)
3493
13.0k
                                   .transform_error(make_eof_scan_error));
3494
3495
        if constexpr (!std::is_signed_v<T>) {
3496
            if (prefix_result.sign == sign_type::minus_sign) {
3497
                return unexpected_scan_error(
3498
                    scan_error::invalid_scanned_value,
3499
                    "Unexpected '-' sign when parsing an "
3500
                    "unsigned value");
3501
            }
3502
        }
3503
3504
13.0k
        if (prefix_result.is_zero) {
3505
0
            value = T{0};
3506
0
            return std::next(prefix_result.iterator);
3507
0
        }
3508
3509
26.1k
        SCN_TRY(after_digits_it,
3510
26.1k
                parse_integer_digits_without_thsep(
3511
26.1k
                    ranges::subrange{prefix_result.iterator, range.end()},
3512
26.1k
                    prefix_result.parsed_base));
3513
3514
26.1k
        auto buf = make_contiguous_buffer(
3515
26.1k
            ranges::subrange{prefix_result.iterator, after_digits_it});
3516
26.1k
        SCN_TRY(result_it,
3517
0
                parse_integer_value(buf.view(), value, prefix_result.sign,
3518
0
                                    prefix_result.parsed_base));
3519
3520
0
        return ranges::next(prefix_result.iterator,
3521
0
                            ranges::distance(buf.view().begin(), result_it));
3522
26.1k
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
_ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Line
Count
Source
3491
13.0k
    {
3492
13.0k
        SCN_TRY(prefix_result, parse_integer_prefix(range, base)
3493
13.0k
                                   .transform_error(make_eof_scan_error));
3494
3495
13.0k
        if constexpr (!std::is_signed_v<T>) {
3496
13.0k
            if (prefix_result.sign == sign_type::minus_sign) {
3497
0
                return unexpected_scan_error(
3498
0
                    scan_error::invalid_scanned_value,
3499
0
                    "Unexpected '-' sign when parsing an "
3500
0
                    "unsigned value");
3501
0
            }
3502
13.0k
        }
3503
3504
13.0k
        if (prefix_result.is_zero) {
3505
0
            value = T{0};
3506
0
            return std::next(prefix_result.iterator);
3507
0
        }
3508
3509
26.1k
        SCN_TRY(after_digits_it,
3510
26.1k
                parse_integer_digits_without_thsep(
3511
26.1k
                    ranges::subrange{prefix_result.iterator, range.end()},
3512
26.1k
                    prefix_result.parsed_base));
3513
3514
26.1k
        auto buf = make_contiguous_buffer(
3515
26.1k
            ranges::subrange{prefix_result.iterator, after_digits_it});
3516
26.1k
        SCN_TRY(result_it,
3517
0
                parse_integer_value(buf.view(), value, prefix_result.sign,
3518
0
                                    prefix_result.parsed_base));
3519
3520
0
        return ranges::next(prefix_result.iterator,
3521
0
                            ranges::distance(buf.view().begin(), result_it));
3522
26.1k
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
_ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Line
Count
Source
3491
634
    {
3492
634
        SCN_TRY(prefix_result, parse_integer_prefix(range, base)
3493
634
                                   .transform_error(make_eof_scan_error));
3494
3495
        if constexpr (!std::is_signed_v<T>) {
3496
            if (prefix_result.sign == sign_type::minus_sign) {
3497
                return unexpected_scan_error(
3498
                    scan_error::invalid_scanned_value,
3499
                    "Unexpected '-' sign when parsing an "
3500
                    "unsigned value");
3501
            }
3502
        }
3503
3504
634
        if (prefix_result.is_zero) {
3505
0
            value = T{0};
3506
0
            return std::next(prefix_result.iterator);
3507
0
        }
3508
3509
1.26k
        SCN_TRY(after_digits_it,
3510
1.26k
                parse_integer_digits_without_thsep(
3511
1.26k
                    ranges::subrange{prefix_result.iterator, range.end()},
3512
1.26k
                    prefix_result.parsed_base));
3513
3514
1.26k
        auto buf = make_contiguous_buffer(
3515
1.26k
            ranges::subrange{prefix_result.iterator, after_digits_it});
3516
1.26k
        SCN_TRY(result_it,
3517
0
                parse_integer_value(buf.view(), value, prefix_result.sign,
3518
0
                                    prefix_result.parsed_base));
3519
3520
0
        return ranges::next(prefix_result.iterator,
3521
0
                            ranges::distance(buf.view().begin(), result_it));
3522
1.26k
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
_ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Line
Count
Source
3491
634
    {
3492
634
        SCN_TRY(prefix_result, parse_integer_prefix(range, base)
3493
634
                                   .transform_error(make_eof_scan_error));
3494
3495
634
        if constexpr (!std::is_signed_v<T>) {
3496
634
            if (prefix_result.sign == sign_type::minus_sign) {
3497
0
                return unexpected_scan_error(
3498
0
                    scan_error::invalid_scanned_value,
3499
0
                    "Unexpected '-' sign when parsing an "
3500
0
                    "unsigned value");
3501
0
            }
3502
634
        }
3503
3504
634
        if (prefix_result.is_zero) {
3505
0
            value = T{0};
3506
0
            return std::next(prefix_result.iterator);
3507
0
        }
3508
3509
1.26k
        SCN_TRY(after_digits_it,
3510
1.26k
                parse_integer_digits_without_thsep(
3511
1.26k
                    ranges::subrange{prefix_result.iterator, range.end()},
3512
1.26k
                    prefix_result.parsed_base));
3513
3514
1.26k
        auto buf = make_contiguous_buffer(
3515
1.26k
            ranges::subrange{prefix_result.iterator, after_digits_it});
3516
1.26k
        SCN_TRY(result_it,
3517
0
                parse_integer_value(buf.view(), value, prefix_result.sign,
3518
0
                                    prefix_result.parsed_base));
3519
3520
0
        return ranges::next(prefix_result.iterator,
3521
0
                            ranges::distance(buf.view().begin(), result_it));
3522
1.26k
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE22read_default_with_baseINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_i
3523
3524
    template <typename Range, typename T>
3525
    auto read_default(Range range, T& value, detail::locale_ref loc)
3526
        -> scan_expected<ranges::const_iterator_t<Range>>
3527
27.4k
    {
3528
27.4k
        SCN_UNUSED(loc);
3529
27.4k
        return read_default_with_base(range, value, 10);
3530
27.4k
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
_ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Line
Count
Source
3527
634
    {
3528
634
        SCN_UNUSED(loc);
3529
634
        return read_default_with_base(range, value, 10);
3530
634
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
_ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Line
Count
Source
3527
634
    {
3528
634
        SCN_UNUSED(loc);
3529
634
        return read_default_with_base(range, value, 10);
3530
634
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
_ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Line
Count
Source
3527
13.0k
    {
3528
13.0k
        SCN_UNUSED(loc);
3529
13.0k
        return read_default_with_base(range, value, 10);
3530
13.0k
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
_ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Line
Count
Source
3527
13.0k
    {
3528
13.0k
        SCN_UNUSED(loc);
3529
13.0k
        return read_default_with_base(range, value, 10);
3530
13.0k
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
3531
3532
    template <typename Range, typename T>
3533
    auto read_specs(Range range,
3534
                    const detail::format_specs& specs,
3535
                    T& value,
3536
                    detail::locale_ref loc)
3537
        -> scan_expected<ranges::const_iterator_t<Range>>
3538
16.9k
    {
3539
16.9k
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3540
16.9k
                                   .transform_error(make_eof_scan_error));
3541
3542
16.9k
        if (prefix_result.sign == sign_type::minus_sign) {
3543
0
            if constexpr (!std::is_signed_v<T>) {
3544
0
                return unexpected_scan_error(
3545
0
                    scan_error::invalid_scanned_value,
3546
0
                    "Unexpected '-' sign when parsing an "
3547
0
                    "unsigned value");
3548
            }
3549
0
            else {
3550
0
                if (specs.type ==
3551
0
                    detail::presentation_type::int_unsigned_decimal) {
3552
0
                    return unexpected_scan_error(
3553
0
                        scan_error::invalid_scanned_value,
3554
0
                        "'u'-option disallows negative values");
3555
0
                }
3556
0
            }
3557
0
        }
3558
3559
16.9k
        if (prefix_result.is_zero) {
3560
0
            value = T{0};
3561
0
            return std::next(prefix_result.iterator);
3562
0
        }
3563
3564
16.9k
        if (SCN_LIKELY(!specs.localized)) {
3565
16.7k
            SCN_TRY(after_digits_it,
3566
15.5k
                    parse_integer_digits_without_thsep(
3567
15.5k
                        ranges::subrange{prefix_result.iterator, range.end()},
3568
15.5k
                        prefix_result.parsed_base));
3569
3570
15.5k
            auto buf = make_contiguous_buffer(
3571
15.5k
                ranges::subrange{prefix_result.iterator, after_digits_it});
3572
15.5k
            SCN_TRY(result_it,
3573
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3574
0
                                        prefix_result.parsed_base));
3575
3576
0
            return ranges::next(
3577
0
                prefix_result.iterator,
3578
0
                ranges::distance(buf.view().begin(), result_it));
3579
15.5k
        }
3580
3581
124
        auto locale_options =
3582
#if SCN_DISABLE_LOCALE
3583
            localized_number_formatting_options<CharT>{};
3584
#else
3585
124
            localized_number_formatting_options<CharT>{loc};
3586
124
#endif
3587
3588
124
        SCN_TRY(parse_digits_result,
3589
0
                parse_integer_digits_with_thsep(
3590
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3591
0
                    prefix_result.parsed_base, locale_options));
3592
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3593
0
            parse_digits_result;
3594
3595
0
        if (!thsep_indices.empty()) {
3596
0
            if (auto e = check_thsep_grouping(
3597
0
                    ranges::subrange{prefix_result.iterator, after_digits_it},
3598
0
                    thsep_indices, locale_options.grouping);
3599
0
                SCN_UNLIKELY(!e)) {
3600
0
                return unexpected(e);
3601
0
            }
3602
0
        }
3603
3604
0
        auto nothsep_source_view =
3605
0
            std::basic_string_view<CharT>{nothsep_source};
3606
0
        SCN_TRY(
3607
0
            nothsep_source_it,
3608
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3609
0
                                prefix_result.parsed_base));
3610
3611
0
        return ranges::next(
3612
0
            prefix_result.iterator,
3613
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3614
0
                ranges::ssize(thsep_indices));
3615
0
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEaEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEaEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
3538
32
    {
3539
32
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3540
32
                                   .transform_error(make_eof_scan_error));
3541
3542
32
        if (prefix_result.sign == sign_type::minus_sign) {
3543
            if constexpr (!std::is_signed_v<T>) {
3544
                return unexpected_scan_error(
3545
                    scan_error::invalid_scanned_value,
3546
                    "Unexpected '-' sign when parsing an "
3547
                    "unsigned value");
3548
            }
3549
0
            else {
3550
0
                if (specs.type ==
3551
0
                    detail::presentation_type::int_unsigned_decimal) {
3552
0
                    return unexpected_scan_error(
3553
0
                        scan_error::invalid_scanned_value,
3554
0
                        "'u'-option disallows negative values");
3555
0
                }
3556
0
            }
3557
0
        }
3558
3559
32
        if (prefix_result.is_zero) {
3560
0
            value = T{0};
3561
0
            return std::next(prefix_result.iterator);
3562
0
        }
3563
3564
32
        if (SCN_LIKELY(!specs.localized)) {
3565
32
            SCN_TRY(after_digits_it,
3566
0
                    parse_integer_digits_without_thsep(
3567
0
                        ranges::subrange{prefix_result.iterator, range.end()},
3568
0
                        prefix_result.parsed_base));
3569
3570
0
            auto buf = make_contiguous_buffer(
3571
0
                ranges::subrange{prefix_result.iterator, after_digits_it});
3572
0
            SCN_TRY(result_it,
3573
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3574
0
                                        prefix_result.parsed_base));
3575
3576
0
            return ranges::next(
3577
0
                prefix_result.iterator,
3578
0
                ranges::distance(buf.view().begin(), result_it));
3579
0
        }
3580
3581
0
        auto locale_options =
3582
#if SCN_DISABLE_LOCALE
3583
            localized_number_formatting_options<CharT>{};
3584
#else
3585
0
            localized_number_formatting_options<CharT>{loc};
3586
0
#endif
3587
3588
0
        SCN_TRY(parse_digits_result,
3589
0
                parse_integer_digits_with_thsep(
3590
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3591
0
                    prefix_result.parsed_base, locale_options));
3592
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3593
0
            parse_digits_result;
3594
3595
0
        if (!thsep_indices.empty()) {
3596
0
            if (auto e = check_thsep_grouping(
3597
0
                    ranges::subrange{prefix_result.iterator, after_digits_it},
3598
0
                    thsep_indices, locale_options.grouping);
3599
0
                SCN_UNLIKELY(!e)) {
3600
0
                return unexpected(e);
3601
0
            }
3602
0
        }
3603
3604
0
        auto nothsep_source_view =
3605
0
            std::basic_string_view<CharT>{nothsep_source};
3606
0
        SCN_TRY(
3607
0
            nothsep_source_it,
3608
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3609
0
                                prefix_result.parsed_base));
3610
3611
0
        return ranges::next(
3612
0
            prefix_result.iterator,
3613
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3614
0
                ranges::ssize(thsep_indices));
3615
0
    }
_ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
3538
22
    {
3539
22
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3540
22
                                   .transform_error(make_eof_scan_error));
3541
3542
22
        if (prefix_result.sign == sign_type::minus_sign) {
3543
            if constexpr (!std::is_signed_v<T>) {
3544
                return unexpected_scan_error(
3545
                    scan_error::invalid_scanned_value,
3546
                    "Unexpected '-' sign when parsing an "
3547
                    "unsigned value");
3548
            }
3549
0
            else {
3550
0
                if (specs.type ==
3551
0
                    detail::presentation_type::int_unsigned_decimal) {
3552
0
                    return unexpected_scan_error(
3553
0
                        scan_error::invalid_scanned_value,
3554
0
                        "'u'-option disallows negative values");
3555
0
                }
3556
0
            }
3557
0
        }
3558
3559
22
        if (prefix_result.is_zero) {
3560
0
            value = T{0};
3561
0
            return std::next(prefix_result.iterator);
3562
0
        }
3563
3564
22
        if (SCN_LIKELY(!specs.localized)) {
3565
22
            SCN_TRY(after_digits_it,
3566
22
                    parse_integer_digits_without_thsep(
3567
22
                        ranges::subrange{prefix_result.iterator, range.end()},
3568
22
                        prefix_result.parsed_base));
3569
3570
22
            auto buf = make_contiguous_buffer(
3571
22
                ranges::subrange{prefix_result.iterator, after_digits_it});
3572
22
            SCN_TRY(result_it,
3573
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3574
0
                                        prefix_result.parsed_base));
3575
3576
0
            return ranges::next(
3577
0
                prefix_result.iterator,
3578
0
                ranges::distance(buf.view().begin(), result_it));
3579
22
        }
3580
3581
0
        auto locale_options =
3582
#if SCN_DISABLE_LOCALE
3583
            localized_number_formatting_options<CharT>{};
3584
#else
3585
0
            localized_number_formatting_options<CharT>{loc};
3586
0
#endif
3587
3588
0
        SCN_TRY(parse_digits_result,
3589
0
                parse_integer_digits_with_thsep(
3590
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3591
0
                    prefix_result.parsed_base, locale_options));
3592
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3593
0
            parse_digits_result;
3594
3595
0
        if (!thsep_indices.empty()) {
3596
0
            if (auto e = check_thsep_grouping(
3597
0
                    ranges::subrange{prefix_result.iterator, after_digits_it},
3598
0
                    thsep_indices, locale_options.grouping);
3599
0
                SCN_UNLIKELY(!e)) {
3600
0
                return unexpected(e);
3601
0
            }
3602
0
        }
3603
3604
0
        auto nothsep_source_view =
3605
0
            std::basic_string_view<CharT>{nothsep_source};
3606
0
        SCN_TRY(
3607
0
            nothsep_source_it,
3608
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3609
0
                                prefix_result.parsed_base));
3610
3611
0
        return ranges::next(
3612
0
            prefix_result.iterator,
3613
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3614
0
                ranges::ssize(thsep_indices));
3615
0
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEsEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEsEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEiEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEiEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
3538
272
    {
3539
272
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3540
272
                                   .transform_error(make_eof_scan_error));
3541
3542
272
        if (prefix_result.sign == sign_type::minus_sign) {
3543
            if constexpr (!std::is_signed_v<T>) {
3544
                return unexpected_scan_error(
3545
                    scan_error::invalid_scanned_value,
3546
                    "Unexpected '-' sign when parsing an "
3547
                    "unsigned value");
3548
            }
3549
0
            else {
3550
0
                if (specs.type ==
3551
0
                    detail::presentation_type::int_unsigned_decimal) {
3552
0
                    return unexpected_scan_error(
3553
0
                        scan_error::invalid_scanned_value,
3554
0
                        "'u'-option disallows negative values");
3555
0
                }
3556
0
            }
3557
0
        }
3558
3559
272
        if (prefix_result.is_zero) {
3560
0
            value = T{0};
3561
0
            return std::next(prefix_result.iterator);
3562
0
        }
3563
3564
272
        if (SCN_LIKELY(!specs.localized)) {
3565
262
            SCN_TRY(after_digits_it,
3566
0
                    parse_integer_digits_without_thsep(
3567
0
                        ranges::subrange{prefix_result.iterator, range.end()},
3568
0
                        prefix_result.parsed_base));
3569
3570
0
            auto buf = make_contiguous_buffer(
3571
0
                ranges::subrange{prefix_result.iterator, after_digits_it});
3572
0
            SCN_TRY(result_it,
3573
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3574
0
                                        prefix_result.parsed_base));
3575
3576
0
            return ranges::next(
3577
0
                prefix_result.iterator,
3578
0
                ranges::distance(buf.view().begin(), result_it));
3579
0
        }
3580
3581
10
        auto locale_options =
3582
#if SCN_DISABLE_LOCALE
3583
            localized_number_formatting_options<CharT>{};
3584
#else
3585
10
            localized_number_formatting_options<CharT>{loc};
3586
10
#endif
3587
3588
10
        SCN_TRY(parse_digits_result,
3589
0
                parse_integer_digits_with_thsep(
3590
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3591
0
                    prefix_result.parsed_base, locale_options));
3592
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3593
0
            parse_digits_result;
3594
3595
0
        if (!thsep_indices.empty()) {
3596
0
            if (auto e = check_thsep_grouping(
3597
0
                    ranges::subrange{prefix_result.iterator, after_digits_it},
3598
0
                    thsep_indices, locale_options.grouping);
3599
0
                SCN_UNLIKELY(!e)) {
3600
0
                return unexpected(e);
3601
0
            }
3602
0
        }
3603
3604
0
        auto nothsep_source_view =
3605
0
            std::basic_string_view<CharT>{nothsep_source};
3606
0
        SCN_TRY(
3607
0
            nothsep_source_it,
3608
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3609
0
                                prefix_result.parsed_base));
3610
3611
0
        return ranges::next(
3612
0
            prefix_result.iterator,
3613
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3614
0
                ranges::ssize(thsep_indices));
3615
0
    }
_ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
3538
286
    {
3539
286
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3540
286
                                   .transform_error(make_eof_scan_error));
3541
3542
286
        if (prefix_result.sign == sign_type::minus_sign) {
3543
            if constexpr (!std::is_signed_v<T>) {
3544
                return unexpected_scan_error(
3545
                    scan_error::invalid_scanned_value,
3546
                    "Unexpected '-' sign when parsing an "
3547
                    "unsigned value");
3548
            }
3549
0
            else {
3550
0
                if (specs.type ==
3551
0
                    detail::presentation_type::int_unsigned_decimal) {
3552
0
                    return unexpected_scan_error(
3553
0
                        scan_error::invalid_scanned_value,
3554
0
                        "'u'-option disallows negative values");
3555
0
                }
3556
0
            }
3557
0
        }
3558
3559
286
        if (prefix_result.is_zero) {
3560
0
            value = T{0};
3561
0
            return std::next(prefix_result.iterator);
3562
0
        }
3563
3564
286
        if (SCN_LIKELY(!specs.localized)) {
3565
270
            SCN_TRY(after_digits_it,
3566
270
                    parse_integer_digits_without_thsep(
3567
270
                        ranges::subrange{prefix_result.iterator, range.end()},
3568
270
                        prefix_result.parsed_base));
3569
3570
270
            auto buf = make_contiguous_buffer(
3571
270
                ranges::subrange{prefix_result.iterator, after_digits_it});
3572
270
            SCN_TRY(result_it,
3573
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3574
0
                                        prefix_result.parsed_base));
3575
3576
0
            return ranges::next(
3577
0
                prefix_result.iterator,
3578
0
                ranges::distance(buf.view().begin(), result_it));
3579
270
        }
3580
3581
16
        auto locale_options =
3582
#if SCN_DISABLE_LOCALE
3583
            localized_number_formatting_options<CharT>{};
3584
#else
3585
16
            localized_number_formatting_options<CharT>{loc};
3586
16
#endif
3587
3588
16
        SCN_TRY(parse_digits_result,
3589
0
                parse_integer_digits_with_thsep(
3590
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3591
0
                    prefix_result.parsed_base, locale_options));
3592
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3593
0
            parse_digits_result;
3594
3595
0
        if (!thsep_indices.empty()) {
3596
0
            if (auto e = check_thsep_grouping(
3597
0
                    ranges::subrange{prefix_result.iterator, after_digits_it},
3598
0
                    thsep_indices, locale_options.grouping);
3599
0
                SCN_UNLIKELY(!e)) {
3600
0
                return unexpected(e);
3601
0
            }
3602
0
        }
3603
3604
0
        auto nothsep_source_view =
3605
0
            std::basic_string_view<CharT>{nothsep_source};
3606
0
        SCN_TRY(
3607
0
            nothsep_source_it,
3608
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3609
0
                                prefix_result.parsed_base));
3610
3611
0
        return ranges::next(
3612
0
            prefix_result.iterator,
3613
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3614
0
                ranges::ssize(thsep_indices));
3615
0
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEElEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEElEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEExEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEExEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEhEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEhEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEtEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEtEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEjEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEjEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
3538
272
    {
3539
272
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3540
272
                                   .transform_error(make_eof_scan_error));
3541
3542
272
        if (prefix_result.sign == sign_type::minus_sign) {
3543
0
            if constexpr (!std::is_signed_v<T>) {
3544
0
                return unexpected_scan_error(
3545
0
                    scan_error::invalid_scanned_value,
3546
0
                    "Unexpected '-' sign when parsing an "
3547
0
                    "unsigned value");
3548
            }
3549
            else {
3550
                if (specs.type ==
3551
                    detail::presentation_type::int_unsigned_decimal) {
3552
                    return unexpected_scan_error(
3553
                        scan_error::invalid_scanned_value,
3554
                        "'u'-option disallows negative values");
3555
                }
3556
            }
3557
0
        }
3558
3559
272
        if (prefix_result.is_zero) {
3560
0
            value = T{0};
3561
0
            return std::next(prefix_result.iterator);
3562
0
        }
3563
3564
272
        if (SCN_LIKELY(!specs.localized)) {
3565
262
            SCN_TRY(after_digits_it,
3566
0
                    parse_integer_digits_without_thsep(
3567
0
                        ranges::subrange{prefix_result.iterator, range.end()},
3568
0
                        prefix_result.parsed_base));
3569
3570
0
            auto buf = make_contiguous_buffer(
3571
0
                ranges::subrange{prefix_result.iterator, after_digits_it});
3572
0
            SCN_TRY(result_it,
3573
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3574
0
                                        prefix_result.parsed_base));
3575
3576
0
            return ranges::next(
3577
0
                prefix_result.iterator,
3578
0
                ranges::distance(buf.view().begin(), result_it));
3579
0
        }
3580
3581
10
        auto locale_options =
3582
#if SCN_DISABLE_LOCALE
3583
            localized_number_formatting_options<CharT>{};
3584
#else
3585
10
            localized_number_formatting_options<CharT>{loc};
3586
10
#endif
3587
3588
10
        SCN_TRY(parse_digits_result,
3589
0
                parse_integer_digits_with_thsep(
3590
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3591
0
                    prefix_result.parsed_base, locale_options));
3592
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3593
0
            parse_digits_result;
3594
3595
0
        if (!thsep_indices.empty()) {
3596
0
            if (auto e = check_thsep_grouping(
3597
0
                    ranges::subrange{prefix_result.iterator, after_digits_it},
3598
0
                    thsep_indices, locale_options.grouping);
3599
0
                SCN_UNLIKELY(!e)) {
3600
0
                return unexpected(e);
3601
0
            }
3602
0
        }
3603
3604
0
        auto nothsep_source_view =
3605
0
            std::basic_string_view<CharT>{nothsep_source};
3606
0
        SCN_TRY(
3607
0
            nothsep_source_it,
3608
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3609
0
                                prefix_result.parsed_base));
3610
3611
0
        return ranges::next(
3612
0
            prefix_result.iterator,
3613
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3614
0
                ranges::ssize(thsep_indices));
3615
0
    }
_ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
3538
286
    {
3539
286
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3540
286
                                   .transform_error(make_eof_scan_error));
3541
3542
286
        if (prefix_result.sign == sign_type::minus_sign) {
3543
0
            if constexpr (!std::is_signed_v<T>) {
3544
0
                return unexpected_scan_error(
3545
0
                    scan_error::invalid_scanned_value,
3546
0
                    "Unexpected '-' sign when parsing an "
3547
0
                    "unsigned value");
3548
            }
3549
            else {
3550
                if (specs.type ==
3551
                    detail::presentation_type::int_unsigned_decimal) {
3552
                    return unexpected_scan_error(
3553
                        scan_error::invalid_scanned_value,
3554
                        "'u'-option disallows negative values");
3555
                }
3556
            }
3557
0
        }
3558
3559
286
        if (prefix_result.is_zero) {
3560
0
            value = T{0};
3561
0
            return std::next(prefix_result.iterator);
3562
0
        }
3563
3564
286
        if (SCN_LIKELY(!specs.localized)) {
3565
270
            SCN_TRY(after_digits_it,
3566
270
                    parse_integer_digits_without_thsep(
3567
270
                        ranges::subrange{prefix_result.iterator, range.end()},
3568
270
                        prefix_result.parsed_base));
3569
3570
270
            auto buf = make_contiguous_buffer(
3571
270
                ranges::subrange{prefix_result.iterator, after_digits_it});
3572
270
            SCN_TRY(result_it,
3573
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3574
0
                                        prefix_result.parsed_base));
3575
3576
0
            return ranges::next(
3577
0
                prefix_result.iterator,
3578
0
                ranges::distance(buf.view().begin(), result_it));
3579
270
        }
3580
3581
16
        auto locale_options =
3582
#if SCN_DISABLE_LOCALE
3583
            localized_number_formatting_options<CharT>{};
3584
#else
3585
16
            localized_number_formatting_options<CharT>{loc};
3586
16
#endif
3587
3588
16
        SCN_TRY(parse_digits_result,
3589
0
                parse_integer_digits_with_thsep(
3590
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3591
0
                    prefix_result.parsed_base, locale_options));
3592
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3593
0
            parse_digits_result;
3594
3595
0
        if (!thsep_indices.empty()) {
3596
0
            if (auto e = check_thsep_grouping(
3597
0
                    ranges::subrange{prefix_result.iterator, after_digits_it},
3598
0
                    thsep_indices, locale_options.grouping);
3599
0
                SCN_UNLIKELY(!e)) {
3600
0
                return unexpected(e);
3601
0
            }
3602
0
        }
3603
3604
0
        auto nothsep_source_view =
3605
0
            std::basic_string_view<CharT>{nothsep_source};
3606
0
        SCN_TRY(
3607
0
            nothsep_source_it,
3608
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3609
0
                                prefix_result.parsed_base));
3610
3611
0
        return ranges::next(
3612
0
            prefix_result.iterator,
3613
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3614
0
                ranges::ssize(thsep_indices));
3615
0
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEmEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEmEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
3538
240
    {
3539
240
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3540
240
                                   .transform_error(make_eof_scan_error));
3541
3542
240
        if (prefix_result.sign == sign_type::minus_sign) {
3543
0
            if constexpr (!std::is_signed_v<T>) {
3544
0
                return unexpected_scan_error(
3545
0
                    scan_error::invalid_scanned_value,
3546
0
                    "Unexpected '-' sign when parsing an "
3547
0
                    "unsigned value");
3548
            }
3549
            else {
3550
                if (specs.type ==
3551
                    detail::presentation_type::int_unsigned_decimal) {
3552
                    return unexpected_scan_error(
3553
                        scan_error::invalid_scanned_value,
3554
                        "'u'-option disallows negative values");
3555
                }
3556
            }
3557
0
        }
3558
3559
240
        if (prefix_result.is_zero) {
3560
0
            value = T{0};
3561
0
            return std::next(prefix_result.iterator);
3562
0
        }
3563
3564
240
        if (SCN_LIKELY(!specs.localized)) {
3565
240
            SCN_TRY(after_digits_it,
3566
0
                    parse_integer_digits_without_thsep(
3567
0
                        ranges::subrange{prefix_result.iterator, range.end()},
3568
0
                        prefix_result.parsed_base));
3569
3570
0
            auto buf = make_contiguous_buffer(
3571
0
                ranges::subrange{prefix_result.iterator, after_digits_it});
3572
0
            SCN_TRY(result_it,
3573
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3574
0
                                        prefix_result.parsed_base));
3575
3576
0
            return ranges::next(
3577
0
                prefix_result.iterator,
3578
0
                ranges::distance(buf.view().begin(), result_it));
3579
0
        }
3580
3581
0
        auto locale_options =
3582
#if SCN_DISABLE_LOCALE
3583
            localized_number_formatting_options<CharT>{};
3584
#else
3585
0
            localized_number_formatting_options<CharT>{loc};
3586
0
#endif
3587
3588
0
        SCN_TRY(parse_digits_result,
3589
0
                parse_integer_digits_with_thsep(
3590
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3591
0
                    prefix_result.parsed_base, locale_options));
3592
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3593
0
            parse_digits_result;
3594
3595
0
        if (!thsep_indices.empty()) {
3596
0
            if (auto e = check_thsep_grouping(
3597
0
                    ranges::subrange{prefix_result.iterator, after_digits_it},
3598
0
                    thsep_indices, locale_options.grouping);
3599
0
                SCN_UNLIKELY(!e)) {
3600
0
                return unexpected(e);
3601
0
            }
3602
0
        }
3603
3604
0
        auto nothsep_source_view =
3605
0
            std::basic_string_view<CharT>{nothsep_source};
3606
0
        SCN_TRY(
3607
0
            nothsep_source_it,
3608
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3609
0
                                prefix_result.parsed_base));
3610
3611
0
        return ranges::next(
3612
0
            prefix_result.iterator,
3613
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3614
0
                ranges::ssize(thsep_indices));
3615
0
    }
_ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
3538
886
    {
3539
886
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3540
886
                                   .transform_error(make_eof_scan_error));
3541
3542
886
        if (prefix_result.sign == sign_type::minus_sign) {
3543
0
            if constexpr (!std::is_signed_v<T>) {
3544
0
                return unexpected_scan_error(
3545
0
                    scan_error::invalid_scanned_value,
3546
0
                    "Unexpected '-' sign when parsing an "
3547
0
                    "unsigned value");
3548
            }
3549
            else {
3550
                if (specs.type ==
3551
                    detail::presentation_type::int_unsigned_decimal) {
3552
                    return unexpected_scan_error(
3553
                        scan_error::invalid_scanned_value,
3554
                        "'u'-option disallows negative values");
3555
                }
3556
            }
3557
0
        }
3558
3559
886
        if (prefix_result.is_zero) {
3560
0
            value = T{0};
3561
0
            return std::next(prefix_result.iterator);
3562
0
        }
3563
3564
886
        if (SCN_LIKELY(!specs.localized)) {
3565
886
            SCN_TRY(after_digits_it,
3566
886
                    parse_integer_digits_without_thsep(
3567
886
                        ranges::subrange{prefix_result.iterator, range.end()},
3568
886
                        prefix_result.parsed_base));
3569
3570
886
            auto buf = make_contiguous_buffer(
3571
886
                ranges::subrange{prefix_result.iterator, after_digits_it});
3572
886
            SCN_TRY(result_it,
3573
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3574
0
                                        prefix_result.parsed_base));
3575
3576
0
            return ranges::next(
3577
0
                prefix_result.iterator,
3578
0
                ranges::distance(buf.view().begin(), result_it));
3579
886
        }
3580
3581
0
        auto locale_options =
3582
#if SCN_DISABLE_LOCALE
3583
            localized_number_formatting_options<CharT>{};
3584
#else
3585
0
            localized_number_formatting_options<CharT>{loc};
3586
0
#endif
3587
3588
0
        SCN_TRY(parse_digits_result,
3589
0
                parse_integer_digits_with_thsep(
3590
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3591
0
                    prefix_result.parsed_base, locale_options));
3592
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3593
0
            parse_digits_result;
3594
3595
0
        if (!thsep_indices.empty()) {
3596
0
            if (auto e = check_thsep_grouping(
3597
0
                    ranges::subrange{prefix_result.iterator, after_digits_it},
3598
0
                    thsep_indices, locale_options.grouping);
3599
0
                SCN_UNLIKELY(!e)) {
3600
0
                return unexpected(e);
3601
0
            }
3602
0
        }
3603
3604
0
        auto nothsep_source_view =
3605
0
            std::basic_string_view<CharT>{nothsep_source};
3606
0
        SCN_TRY(
3607
0
            nothsep_source_it,
3608
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3609
0
                                prefix_result.parsed_base));
3610
3611
0
        return ranges::next(
3612
0
            prefix_result.iterator,
3613
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3614
0
                ranges::ssize(thsep_indices));
3615
0
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEyEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEyEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEiEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEiEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
3538
178
    {
3539
178
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3540
178
                                   .transform_error(make_eof_scan_error));
3541
3542
178
        if (prefix_result.sign == sign_type::minus_sign) {
3543
            if constexpr (!std::is_signed_v<T>) {
3544
                return unexpected_scan_error(
3545
                    scan_error::invalid_scanned_value,
3546
                    "Unexpected '-' sign when parsing an "
3547
                    "unsigned value");
3548
            }
3549
0
            else {
3550
0
                if (specs.type ==
3551
0
                    detail::presentation_type::int_unsigned_decimal) {
3552
0
                    return unexpected_scan_error(
3553
0
                        scan_error::invalid_scanned_value,
3554
0
                        "'u'-option disallows negative values");
3555
0
                }
3556
0
            }
3557
0
        }
3558
3559
178
        if (prefix_result.is_zero) {
3560
0
            value = T{0};
3561
0
            return std::next(prefix_result.iterator);
3562
0
        }
3563
3564
178
        if (SCN_LIKELY(!specs.localized)) {
3565
160
            SCN_TRY(after_digits_it,
3566
0
                    parse_integer_digits_without_thsep(
3567
0
                        ranges::subrange{prefix_result.iterator, range.end()},
3568
0
                        prefix_result.parsed_base));
3569
3570
0
            auto buf = make_contiguous_buffer(
3571
0
                ranges::subrange{prefix_result.iterator, after_digits_it});
3572
0
            SCN_TRY(result_it,
3573
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3574
0
                                        prefix_result.parsed_base));
3575
3576
0
            return ranges::next(
3577
0
                prefix_result.iterator,
3578
0
                ranges::distance(buf.view().begin(), result_it));
3579
0
        }
3580
3581
18
        auto locale_options =
3582
#if SCN_DISABLE_LOCALE
3583
            localized_number_formatting_options<CharT>{};
3584
#else
3585
18
            localized_number_formatting_options<CharT>{loc};
3586
18
#endif
3587
3588
18
        SCN_TRY(parse_digits_result,
3589
0
                parse_integer_digits_with_thsep(
3590
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3591
0
                    prefix_result.parsed_base, locale_options));
3592
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3593
0
            parse_digits_result;
3594
3595
0
        if (!thsep_indices.empty()) {
3596
0
            if (auto e = check_thsep_grouping(
3597
0
                    ranges::subrange{prefix_result.iterator, after_digits_it},
3598
0
                    thsep_indices, locale_options.grouping);
3599
0
                SCN_UNLIKELY(!e)) {
3600
0
                return unexpected(e);
3601
0
            }
3602
0
        }
3603
3604
0
        auto nothsep_source_view =
3605
0
            std::basic_string_view<CharT>{nothsep_source};
3606
0
        SCN_TRY(
3607
0
            nothsep_source_it,
3608
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3609
0
                                prefix_result.parsed_base));
3610
3611
0
        return ranges::next(
3612
0
            prefix_result.iterator,
3613
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3614
0
                ranges::ssize(thsep_indices));
3615
0
    }
_ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEiEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
3538
380
    {
3539
380
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3540
380
                                   .transform_error(make_eof_scan_error));
3541
3542
380
        if (prefix_result.sign == sign_type::minus_sign) {
3543
            if constexpr (!std::is_signed_v<T>) {
3544
                return unexpected_scan_error(
3545
                    scan_error::invalid_scanned_value,
3546
                    "Unexpected '-' sign when parsing an "
3547
                    "unsigned value");
3548
            }
3549
0
            else {
3550
0
                if (specs.type ==
3551
0
                    detail::presentation_type::int_unsigned_decimal) {
3552
0
                    return unexpected_scan_error(
3553
0
                        scan_error::invalid_scanned_value,
3554
0
                        "'u'-option disallows negative values");
3555
0
                }
3556
0
            }
3557
0
        }
3558
3559
380
        if (prefix_result.is_zero) {
3560
0
            value = T{0};
3561
0
            return std::next(prefix_result.iterator);
3562
0
        }
3563
3564
380
        if (SCN_LIKELY(!specs.localized)) {
3565
362
            SCN_TRY(after_digits_it,
3566
362
                    parse_integer_digits_without_thsep(
3567
362
                        ranges::subrange{prefix_result.iterator, range.end()},
3568
362
                        prefix_result.parsed_base));
3569
3570
362
            auto buf = make_contiguous_buffer(
3571
362
                ranges::subrange{prefix_result.iterator, after_digits_it});
3572
362
            SCN_TRY(result_it,
3573
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3574
0
                                        prefix_result.parsed_base));
3575
3576
0
            return ranges::next(
3577
0
                prefix_result.iterator,
3578
0
                ranges::distance(buf.view().begin(), result_it));
3579
362
        }
3580
3581
18
        auto locale_options =
3582
#if SCN_DISABLE_LOCALE
3583
            localized_number_formatting_options<CharT>{};
3584
#else
3585
18
            localized_number_formatting_options<CharT>{loc};
3586
18
#endif
3587
3588
18
        SCN_TRY(parse_digits_result,
3589
0
                parse_integer_digits_with_thsep(
3590
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3591
0
                    prefix_result.parsed_base, locale_options));
3592
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3593
0
            parse_digits_result;
3594
3595
0
        if (!thsep_indices.empty()) {
3596
0
            if (auto e = check_thsep_grouping(
3597
0
                    ranges::subrange{prefix_result.iterator, after_digits_it},
3598
0
                    thsep_indices, locale_options.grouping);
3599
0
                SCN_UNLIKELY(!e)) {
3600
0
                return unexpected(e);
3601
0
            }
3602
0
        }
3603
3604
0
        auto nothsep_source_view =
3605
0
            std::basic_string_view<CharT>{nothsep_source};
3606
0
        SCN_TRY(
3607
0
            nothsep_source_it,
3608
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3609
0
                                prefix_result.parsed_base));
3610
3611
0
        return ranges::next(
3612
0
            prefix_result.iterator,
3613
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3614
0
                ranges::ssize(thsep_indices));
3615
0
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEaEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEaEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEaEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEsEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEsEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEsEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEElEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEElEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EElEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEExEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEExEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EExEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEhEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEhEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEhEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEtEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEtEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEtEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEjEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEjEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
3538
158
    {
3539
158
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3540
158
                                   .transform_error(make_eof_scan_error));
3541
3542
158
        if (prefix_result.sign == sign_type::minus_sign) {
3543
0
            if constexpr (!std::is_signed_v<T>) {
3544
0
                return unexpected_scan_error(
3545
0
                    scan_error::invalid_scanned_value,
3546
0
                    "Unexpected '-' sign when parsing an "
3547
0
                    "unsigned value");
3548
            }
3549
            else {
3550
                if (specs.type ==
3551
                    detail::presentation_type::int_unsigned_decimal) {
3552
                    return unexpected_scan_error(
3553
                        scan_error::invalid_scanned_value,
3554
                        "'u'-option disallows negative values");
3555
                }
3556
            }
3557
0
        }
3558
3559
158
        if (prefix_result.is_zero) {
3560
0
            value = T{0};
3561
0
            return std::next(prefix_result.iterator);
3562
0
        }
3563
3564
158
        if (SCN_LIKELY(!specs.localized)) {
3565
140
            SCN_TRY(after_digits_it,
3566
0
                    parse_integer_digits_without_thsep(
3567
0
                        ranges::subrange{prefix_result.iterator, range.end()},
3568
0
                        prefix_result.parsed_base));
3569
3570
0
            auto buf = make_contiguous_buffer(
3571
0
                ranges::subrange{prefix_result.iterator, after_digits_it});
3572
0
            SCN_TRY(result_it,
3573
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3574
0
                                        prefix_result.parsed_base));
3575
3576
0
            return ranges::next(
3577
0
                prefix_result.iterator,
3578
0
                ranges::distance(buf.view().begin(), result_it));
3579
0
        }
3580
3581
18
        auto locale_options =
3582
#if SCN_DISABLE_LOCALE
3583
            localized_number_formatting_options<CharT>{};
3584
#else
3585
18
            localized_number_formatting_options<CharT>{loc};
3586
18
#endif
3587
3588
18
        SCN_TRY(parse_digits_result,
3589
0
                parse_integer_digits_with_thsep(
3590
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3591
0
                    prefix_result.parsed_base, locale_options));
3592
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3593
0
            parse_digits_result;
3594
3595
0
        if (!thsep_indices.empty()) {
3596
0
            if (auto e = check_thsep_grouping(
3597
0
                    ranges::subrange{prefix_result.iterator, after_digits_it},
3598
0
                    thsep_indices, locale_options.grouping);
3599
0
                SCN_UNLIKELY(!e)) {
3600
0
                return unexpected(e);
3601
0
            }
3602
0
        }
3603
3604
0
        auto nothsep_source_view =
3605
0
            std::basic_string_view<CharT>{nothsep_source};
3606
0
        SCN_TRY(
3607
0
            nothsep_source_it,
3608
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3609
0
                                prefix_result.parsed_base));
3610
3611
0
        return ranges::next(
3612
0
            prefix_result.iterator,
3613
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3614
0
                ranges::ssize(thsep_indices));
3615
0
    }
_ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEjEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
3538
360
    {
3539
360
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3540
360
                                   .transform_error(make_eof_scan_error));
3541
3542
360
        if (prefix_result.sign == sign_type::minus_sign) {
3543
0
            if constexpr (!std::is_signed_v<T>) {
3544
0
                return unexpected_scan_error(
3545
0
                    scan_error::invalid_scanned_value,
3546
0
                    "Unexpected '-' sign when parsing an "
3547
0
                    "unsigned value");
3548
            }
3549
            else {
3550
                if (specs.type ==
3551
                    detail::presentation_type::int_unsigned_decimal) {
3552
                    return unexpected_scan_error(
3553
                        scan_error::invalid_scanned_value,
3554
                        "'u'-option disallows negative values");
3555
                }
3556
            }
3557
0
        }
3558
3559
360
        if (prefix_result.is_zero) {
3560
0
            value = T{0};
3561
0
            return std::next(prefix_result.iterator);
3562
0
        }
3563
3564
360
        if (SCN_LIKELY(!specs.localized)) {
3565
342
            SCN_TRY(after_digits_it,
3566
342
                    parse_integer_digits_without_thsep(
3567
342
                        ranges::subrange{prefix_result.iterator, range.end()},
3568
342
                        prefix_result.parsed_base));
3569
3570
342
            auto buf = make_contiguous_buffer(
3571
342
                ranges::subrange{prefix_result.iterator, after_digits_it});
3572
342
            SCN_TRY(result_it,
3573
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3574
0
                                        prefix_result.parsed_base));
3575
3576
0
            return ranges::next(
3577
0
                prefix_result.iterator,
3578
0
                ranges::distance(buf.view().begin(), result_it));
3579
342
        }
3580
3581
18
        auto locale_options =
3582
#if SCN_DISABLE_LOCALE
3583
            localized_number_formatting_options<CharT>{};
3584
#else
3585
18
            localized_number_formatting_options<CharT>{loc};
3586
18
#endif
3587
3588
18
        SCN_TRY(parse_digits_result,
3589
0
                parse_integer_digits_with_thsep(
3590
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3591
0
                    prefix_result.parsed_base, locale_options));
3592
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3593
0
            parse_digits_result;
3594
3595
0
        if (!thsep_indices.empty()) {
3596
0
            if (auto e = check_thsep_grouping(
3597
0
                    ranges::subrange{prefix_result.iterator, after_digits_it},
3598
0
                    thsep_indices, locale_options.grouping);
3599
0
                SCN_UNLIKELY(!e)) {
3600
0
                return unexpected(e);
3601
0
            }
3602
0
        }
3603
3604
0
        auto nothsep_source_view =
3605
0
            std::basic_string_view<CharT>{nothsep_source};
3606
0
        SCN_TRY(
3607
0
            nothsep_source_it,
3608
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3609
0
                                prefix_result.parsed_base));
3610
3611
0
        return ranges::next(
3612
0
            prefix_result.iterator,
3613
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3614
0
                ranges::ssize(thsep_indices));
3615
0
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEmEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEmEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
3538
122
    {
3539
122
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3540
122
                                   .transform_error(make_eof_scan_error));
3541
3542
122
        if (prefix_result.sign == sign_type::minus_sign) {
3543
0
            if constexpr (!std::is_signed_v<T>) {
3544
0
                return unexpected_scan_error(
3545
0
                    scan_error::invalid_scanned_value,
3546
0
                    "Unexpected '-' sign when parsing an "
3547
0
                    "unsigned value");
3548
            }
3549
            else {
3550
                if (specs.type ==
3551
                    detail::presentation_type::int_unsigned_decimal) {
3552
                    return unexpected_scan_error(
3553
                        scan_error::invalid_scanned_value,
3554
                        "'u'-option disallows negative values");
3555
                }
3556
            }
3557
0
        }
3558
3559
122
        if (prefix_result.is_zero) {
3560
0
            value = T{0};
3561
0
            return std::next(prefix_result.iterator);
3562
0
        }
3563
3564
122
        if (SCN_LIKELY(!specs.localized)) {
3565
122
            SCN_TRY(after_digits_it,
3566
0
                    parse_integer_digits_without_thsep(
3567
0
                        ranges::subrange{prefix_result.iterator, range.end()},
3568
0
                        prefix_result.parsed_base));
3569
3570
0
            auto buf = make_contiguous_buffer(
3571
0
                ranges::subrange{prefix_result.iterator, after_digits_it});
3572
0
            SCN_TRY(result_it,
3573
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3574
0
                                        prefix_result.parsed_base));
3575
3576
0
            return ranges::next(
3577
0
                prefix_result.iterator,
3578
0
                ranges::distance(buf.view().begin(), result_it));
3579
0
        }
3580
3581
0
        auto locale_options =
3582
#if SCN_DISABLE_LOCALE
3583
            localized_number_formatting_options<CharT>{};
3584
#else
3585
0
            localized_number_formatting_options<CharT>{loc};
3586
0
#endif
3587
3588
0
        SCN_TRY(parse_digits_result,
3589
0
                parse_integer_digits_with_thsep(
3590
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3591
0
                    prefix_result.parsed_base, locale_options));
3592
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3593
0
            parse_digits_result;
3594
3595
0
        if (!thsep_indices.empty()) {
3596
0
            if (auto e = check_thsep_grouping(
3597
0
                    ranges::subrange{prefix_result.iterator, after_digits_it},
3598
0
                    thsep_indices, locale_options.grouping);
3599
0
                SCN_UNLIKELY(!e)) {
3600
0
                return unexpected(e);
3601
0
            }
3602
0
        }
3603
3604
0
        auto nothsep_source_view =
3605
0
            std::basic_string_view<CharT>{nothsep_source};
3606
0
        SCN_TRY(
3607
0
            nothsep_source_it,
3608
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3609
0
                                prefix_result.parsed_base));
3610
3611
0
        return ranges::next(
3612
0
            prefix_result.iterator,
3613
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3614
0
                ranges::ssize(thsep_indices));
3615
0
    }
_ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEmEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
3538
13.4k
    {
3539
13.4k
        SCN_TRY(prefix_result, parse_integer_prefix(range, specs.get_base())
3540
13.4k
                                   .transform_error(make_eof_scan_error));
3541
3542
13.4k
        if (prefix_result.sign == sign_type::minus_sign) {
3543
0
            if constexpr (!std::is_signed_v<T>) {
3544
0
                return unexpected_scan_error(
3545
0
                    scan_error::invalid_scanned_value,
3546
0
                    "Unexpected '-' sign when parsing an "
3547
0
                    "unsigned value");
3548
            }
3549
            else {
3550
                if (specs.type ==
3551
                    detail::presentation_type::int_unsigned_decimal) {
3552
                    return unexpected_scan_error(
3553
                        scan_error::invalid_scanned_value,
3554
                        "'u'-option disallows negative values");
3555
                }
3556
            }
3557
0
        }
3558
3559
13.4k
        if (prefix_result.is_zero) {
3560
0
            value = T{0};
3561
0
            return std::next(prefix_result.iterator);
3562
0
        }
3563
3564
13.4k
        if (SCN_LIKELY(!specs.localized)) {
3565
13.4k
            SCN_TRY(after_digits_it,
3566
13.4k
                    parse_integer_digits_without_thsep(
3567
13.4k
                        ranges::subrange{prefix_result.iterator, range.end()},
3568
13.4k
                        prefix_result.parsed_base));
3569
3570
13.4k
            auto buf = make_contiguous_buffer(
3571
13.4k
                ranges::subrange{prefix_result.iterator, after_digits_it});
3572
13.4k
            SCN_TRY(result_it,
3573
0
                    parse_integer_value(buf.view(), value, prefix_result.sign,
3574
0
                                        prefix_result.parsed_base));
3575
3576
0
            return ranges::next(
3577
0
                prefix_result.iterator,
3578
0
                ranges::distance(buf.view().begin(), result_it));
3579
13.4k
        }
3580
3581
0
        auto locale_options =
3582
#if SCN_DISABLE_LOCALE
3583
            localized_number_formatting_options<CharT>{};
3584
#else
3585
0
            localized_number_formatting_options<CharT>{loc};
3586
0
#endif
3587
3588
0
        SCN_TRY(parse_digits_result,
3589
0
                parse_integer_digits_with_thsep(
3590
0
                    ranges::subrange{prefix_result.iterator, range.end()},
3591
0
                    prefix_result.parsed_base, locale_options));
3592
0
        const auto& [after_digits_it, nothsep_source, thsep_indices] =
3593
0
            parse_digits_result;
3594
3595
0
        if (!thsep_indices.empty()) {
3596
0
            if (auto e = check_thsep_grouping(
3597
0
                    ranges::subrange{prefix_result.iterator, after_digits_it},
3598
0
                    thsep_indices, locale_options.grouping);
3599
0
                SCN_UNLIKELY(!e)) {
3600
0
                return unexpected(e);
3601
0
            }
3602
0
        }
3603
3604
0
        auto nothsep_source_view =
3605
0
            std::basic_string_view<CharT>{nothsep_source};
3606
0
        SCN_TRY(
3607
0
            nothsep_source_it,
3608
0
            parse_integer_value(nothsep_source_view, value, prefix_result.sign,
3609
0
                                prefix_result.parsed_base));
3610
3611
0
        return ranges::next(
3612
0
            prefix_result.iterator,
3613
0
            ranges::distance(nothsep_source_view.begin(), nothsep_source_it) +
3614
0
                ranges::ssize(thsep_indices));
3615
0
    }
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEyEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEyEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl19reader_impl_for_intIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEyEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
3616
};
3617
3618
/////////////////////////////////////////////////////////////////
3619
// Floating-point reader
3620
/////////////////////////////////////////////////////////////////
3621
3622
struct float_reader_base {
3623
    enum options_type {
3624
        allow_hex = 1,
3625
        allow_scientific = 2,
3626
        allow_fixed = 4,
3627
        allow_thsep = 8
3628
    };
3629
3630
    enum class float_kind {
3631
        tbd = 0,
3632
        generic,             // fixed or scientific
3633
        fixed,               // xxx.yyy
3634
        scientific,          // xxx.yyyEzzz
3635
        hex_without_prefix,  // xxx.yyypzzz
3636
        hex_with_prefix,     // 0Xxxx.yyypzzz
3637
        inf_short,           // inf
3638
        inf_long,            // infinity
3639
        nan_simple,          // nan
3640
        nan_with_payload,    // nan(xxx)
3641
    };
3642
3643
13.7k
    constexpr float_reader_base() = default;
3644
1.04k
    explicit constexpr float_reader_base(unsigned opt) : m_options(opt) {}
3645
3646
protected:
3647
    unsigned m_options{allow_hex | allow_scientific | allow_fixed};
3648
};
3649
3650
template <typename CharT>
3651
class float_reader : public numeric_reader<CharT>, public float_reader_base {
3652
    using numeric_base = numeric_reader<CharT>;
3653
3654
public:
3655
    using char_type = CharT;
3656
3657
13.7k
    constexpr float_reader() = default;
scn::v3::impl::float_reader<char>::float_reader()
Line
Count
Source
3657
634
    constexpr float_reader() = default;
scn::v3::impl::float_reader<wchar_t>::float_reader()
Line
Count
Source
3657
13.0k
    constexpr float_reader() = default;
3658
3659
1.04k
    explicit constexpr float_reader(unsigned opt) : float_reader_base(opt) {}
scn::v3::impl::float_reader<char>::float_reader(unsigned int)
Line
Count
Source
3659
556
    explicit constexpr float_reader(unsigned opt) : float_reader_base(opt) {}
scn::v3::impl::float_reader<wchar_t>::float_reader(unsigned int)
Line
Count
Source
3659
488
    explicit constexpr float_reader(unsigned opt) : float_reader_base(opt) {}
3660
3661
    template <typename Range>
3662
    SCN_NODISCARD auto read_source(Range range, detail::locale_ref)
3663
        -> scan_expected<ranges::const_iterator_t<Range>>
3664
14.7k
    {
3665
14.7k
        if (SCN_UNLIKELY(m_options & float_reader_base::allow_thsep)) {
3666
0
            m_locale_options = localized_number_formatting_options<CharT>{
3667
0
                classic_with_thsep_tag{}};
3668
0
        }
3669
3670
14.7k
        return read_source_impl(range);
3671
14.7k
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE11read_sourceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE11read_sourceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS9_10locale_refE
_ZN3scn2v34impl12float_readerIcE11read_sourceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS0_6detail10locale_refE
Line
Count
Source
3664
260
    {
3665
260
        if (SCN_UNLIKELY(m_options & float_reader_base::allow_thsep)) {
3666
0
            m_locale_options = localized_number_formatting_options<CharT>{
3667
0
                classic_with_thsep_tag{}};
3668
0
        }
3669
3670
260
        return read_source_impl(range);
3671
260
    }
_ZN3scn2v34impl12float_readerIcE11read_sourceINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS0_6detail10locale_refE
Line
Count
Source
3664
912
    {
3665
912
        if (SCN_UNLIKELY(m_options & float_reader_base::allow_thsep)) {
3666
0
            m_locale_options = localized_number_formatting_options<CharT>{
3667
0
                classic_with_thsep_tag{}};
3668
0
        }
3669
3670
912
        return read_source_impl(range);
3671
912
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE11read_sourceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE11read_sourceINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS9_10locale_refE
_ZN3scn2v34impl12float_readerIwE11read_sourceINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS0_6detail10locale_refE
Line
Count
Source
3664
134
    {
3665
134
        if (SCN_UNLIKELY(m_options & float_reader_base::allow_thsep)) {
3666
0
            m_locale_options = localized_number_formatting_options<CharT>{
3667
0
                classic_with_thsep_tag{}};
3668
0
        }
3669
3670
134
        return read_source_impl(range);
3671
134
    }
_ZN3scn2v34impl12float_readerIwE11read_sourceINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS0_6detail10locale_refE
Line
Count
Source
3664
13.4k
    {
3665
13.4k
        if (SCN_UNLIKELY(m_options & float_reader_base::allow_thsep)) {
3666
0
            m_locale_options = localized_number_formatting_options<CharT>{
3667
0
                classic_with_thsep_tag{}};
3668
0
        }
3669
3670
13.4k
        return read_source_impl(range);
3671
13.4k
    }
3672
3673
#if !SCN_DISABLE_LOCALE
3674
    template <typename Range>
3675
    SCN_NODISCARD auto read_source_localized(Range range,
3676
                                             detail::locale_ref loc)
3677
        -> scan_expected<ranges::const_iterator_t<Range>>
3678
34
    {
3679
34
        m_locale_options = localized_number_formatting_options<CharT>{loc};
3680
34
        if (SCN_LIKELY((m_options & float_reader_base::allow_thsep) == 0)) {
3681
0
            m_locale_options.thousands_sep = CharT{0};
3682
0
        }
3683
3684
34
        return read_source_impl(range);
3685
34
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE21read_source_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE21read_source_localizedINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS9_10locale_refE
_ZN3scn2v34impl12float_readerIcE21read_source_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS0_6detail10locale_refE
Line
Count
Source
3678
8
    {
3679
8
        m_locale_options = localized_number_formatting_options<CharT>{loc};
3680
8
        if (SCN_LIKELY((m_options & float_reader_base::allow_thsep) == 0)) {
3681
0
            m_locale_options.thousands_sep = CharT{0};
3682
0
        }
3683
3684
8
        return read_source_impl(range);
3685
8
    }
_ZN3scn2v34impl12float_readerIcE21read_source_localizedINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS0_6detail10locale_refE
Line
Count
Source
3678
10
    {
3679
10
        m_locale_options = localized_number_formatting_options<CharT>{loc};
3680
10
        if (SCN_LIKELY((m_options & float_reader_base::allow_thsep) == 0)) {
3681
0
            m_locale_options.thousands_sep = CharT{0};
3682
0
        }
3683
3684
10
        return read_source_impl(range);
3685
10
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE21read_source_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE21read_source_localizedINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS9_10locale_refE
_ZN3scn2v34impl12float_readerIwE21read_source_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS0_6detail10locale_refE
Line
Count
Source
3678
8
    {
3679
8
        m_locale_options = localized_number_formatting_options<CharT>{loc};
3680
8
        if (SCN_LIKELY((m_options & float_reader_base::allow_thsep) == 0)) {
3681
0
            m_locale_options.thousands_sep = CharT{0};
3682
0
        }
3683
3684
8
        return read_source_impl(range);
3685
8
    }
_ZN3scn2v34impl12float_readerIwE21read_source_localizedINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS0_6detail10locale_refE
Line
Count
Source
3678
8
    {
3679
8
        m_locale_options = localized_number_formatting_options<CharT>{loc};
3680
8
        if (SCN_LIKELY((m_options & float_reader_base::allow_thsep) == 0)) {
3681
0
            m_locale_options.thousands_sep = CharT{0};
3682
0
        }
3683
3684
8
        return read_source_impl(range);
3685
8
    }
3686
#endif
3687
3688
    template <typename T>
3689
    SCN_NODISCARD scan_expected<std::ptrdiff_t> parse_value(T& value)
3690
14.3k
    {
3691
14.3k
        SCN_EXPECT(m_kind != float_kind::tbd);
3692
3693
14.3k
        const std::ptrdiff_t sign_len =
3694
14.3k
            m_sign != sign_type::default_sign ? 1 : 0;
3695
3696
14.3k
        SCN_TRY(n, parse_value_impl(value));
3697
0
        return n + sign_len + ranges::ssize(m_thsep_indices);
3698
14.3k
    }
Unexecuted instantiation: scn::v3::scan_expected<long> scn::v3::impl::float_reader<char>::parse_value<float>(float&)
scn::v3::scan_expected<long> scn::v3::impl::float_reader<char>::parse_value<double>(double&)
Line
Count
Source
3690
896
    {
3691
896
        SCN_EXPECT(m_kind != float_kind::tbd);
3692
3693
896
        const std::ptrdiff_t sign_len =
3694
896
            m_sign != sign_type::default_sign ? 1 : 0;
3695
3696
896
        SCN_TRY(n, parse_value_impl(value));
3697
0
        return n + sign_len + ranges::ssize(m_thsep_indices);
3698
896
    }
Unexecuted instantiation: scn::v3::scan_expected<long> scn::v3::impl::float_reader<char>::parse_value<long double>(long double&)
Unexecuted instantiation: scn::v3::scan_expected<long> scn::v3::impl::float_reader<wchar_t>::parse_value<float>(float&)
scn::v3::scan_expected<long> scn::v3::impl::float_reader<wchar_t>::parse_value<double>(double&)
Line
Count
Source
3690
13.4k
    {
3691
13.4k
        SCN_EXPECT(m_kind != float_kind::tbd);
3692
3693
13.4k
        const std::ptrdiff_t sign_len =
3694
13.4k
            m_sign != sign_type::default_sign ? 1 : 0;
3695
3696
13.4k
        SCN_TRY(n, parse_value_impl(value));
3697
0
        return n + sign_len + ranges::ssize(m_thsep_indices);
3698
13.4k
    }
Unexecuted instantiation: scn::v3::scan_expected<long> scn::v3::impl::float_reader<wchar_t>::parse_value<long double>(long double&)
3699
3700
private:
3701
    template <typename Range>
3702
    auto read_source_impl(Range range)
3703
        -> scan_expected<ranges::const_iterator_t<Range>>
3704
14.7k
    {
3705
14.7k
        SCN_TRY(sign_result,
3706
14.7k
                parse_numeric_sign(range).transform_error(make_eof_scan_error));
3707
14.7k
        auto it = sign_result.first;
3708
14.7k
        m_sign = sign_result.second;
3709
3710
14.7k
        auto digits_begin = it;
3711
14.7k
        auto r = ranges::subrange{it, range.end()};
3712
        if constexpr (ranges::contiguous_range<Range> &&
3713
14.3k
                      ranges::sized_range<Range>) {
3714
14.3k
            if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 ||
3715
14.3k
                             m_locale_options.decimal_point != CharT{'.'})) {
3716
0
                SCN_TRY_ASSIGN(
3717
0
                    it,
3718
0
                    do_read_source_impl(
3719
0
                        r,
3720
0
                        [&](const auto& rr) { return read_regular_float(rr); },
3721
0
                        [&](const auto& rr) { return read_hexfloat(rr); }));
3722
0
            }
3723
14.3k
            else {
3724
14.3k
                auto cb = [&](const auto& rr)
3725
14.3k
                    -> scan_expected<ranges::const_iterator_t<decltype(rr)>> {
3726
14.3k
                    auto res = read_all(rr);
3727
14.3k
                    if (SCN_UNLIKELY(res == r.begin())) {
3728
0
                        return unexpected_scan_error(
3729
0
                            scan_error::invalid_scanned_value,
3730
0
                            "Invalid float value");
3731
0
                    }
3732
14.3k
                    return res;
3733
14.3k
                };
_ZZN3scn2v34impl12float_readerIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_ENKUlRKSF_E1_clISB_EENSC_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSE_IDtfp_EE4typeEEEEEEESM_
Line
Count
Source
3725
896
                    -> scan_expected<ranges::const_iterator_t<decltype(rr)>> {
3726
896
                    auto res = read_all(rr);
3727
896
                    if (SCN_UNLIKELY(res == r.begin())) {
3728
0
                        return unexpected_scan_error(
3729
0
                            scan_error::invalid_scanned_value,
3730
0
                            "Invalid float value");
3731
0
                    }
3732
896
                    return res;
3733
896
                };
_ZZN3scn2v34impl12float_readerIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_ENKUlRKSF_E1_clISB_EENSC_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSE_IDtfp_EE4typeEEEEEEESM_
Line
Count
Source
3725
13.4k
                    -> scan_expected<ranges::const_iterator_t<decltype(rr)>> {
3726
13.4k
                    auto res = read_all(rr);
3727
13.4k
                    if (SCN_UNLIKELY(res == r.begin())) {
3728
0
                        return unexpected_scan_error(
3729
0
                            scan_error::invalid_scanned_value,
3730
0
                            "Invalid float value");
3731
0
                    }
3732
13.4k
                    return res;
3733
13.4k
                };
3734
14.3k
                SCN_TRY_ASSIGN(it, do_read_source_impl(r, cb, cb));
3735
14.3k
            }
3736
        }
3737
410
        else {
3738
410
            SCN_TRY_ASSIGN(
3739
0
                it,
3740
0
                do_read_source_impl(
3741
0
                    r, [&](const auto& rr) { return read_regular_float(rr); },
3742
0
                    [&](const auto& rr) { return read_hexfloat(rr); }));
3743
0
        }
3744
3745
14.7k
        SCN_EXPECT(m_kind != float_kind::tbd);
3746
3747
14.3k
        if (m_kind != float_kind::inf_short && m_kind != float_kind::inf_long &&
3748
14.3k
            m_kind != float_kind::nan_simple &&
3749
14.3k
            m_kind != float_kind::nan_with_payload) {
3750
14.3k
            this->m_buffer.assign(ranges::subrange{digits_begin, it});
3751
14.3k
        }
3752
3753
14.3k
        handle_separators();
3754
3755
14.3k
        if (!m_thsep_indices.empty()) {
3756
0
            SCN_EXPECT(m_integral_part_length >= 0);
3757
0
            if (auto e = check_thsep_grouping(
3758
0
                    ranges::subrange{
3759
0
                        digits_begin,
3760
0
                        ranges::next(digits_begin, m_integral_part_length)},
3761
0
                    m_thsep_indices, m_locale_options.grouping);
3762
0
                SCN_UNLIKELY(!e)) {
3763
0
                return unexpected(e);
3764
0
            }
3765
0
        }
3766
3767
14.3k
        return it;
3768
14.3k
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v34impl12float_readerIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_
Line
Count
Source
3704
268
    {
3705
268
        SCN_TRY(sign_result,
3706
268
                parse_numeric_sign(range).transform_error(make_eof_scan_error));
3707
268
        auto it = sign_result.first;
3708
268
        m_sign = sign_result.second;
3709
3710
268
        auto digits_begin = it;
3711
268
        auto r = ranges::subrange{it, range.end()};
3712
        if constexpr (ranges::contiguous_range<Range> &&
3713
                      ranges::sized_range<Range>) {
3714
            if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 ||
3715
                             m_locale_options.decimal_point != CharT{'.'})) {
3716
                SCN_TRY_ASSIGN(
3717
                    it,
3718
                    do_read_source_impl(
3719
                        r,
3720
                        [&](const auto& rr) { return read_regular_float(rr); },
3721
                        [&](const auto& rr) { return read_hexfloat(rr); }));
3722
            }
3723
            else {
3724
                auto cb = [&](const auto& rr)
3725
                    -> scan_expected<ranges::const_iterator_t<decltype(rr)>> {
3726
                    auto res = read_all(rr);
3727
                    if (SCN_UNLIKELY(res == r.begin())) {
3728
                        return unexpected_scan_error(
3729
                            scan_error::invalid_scanned_value,
3730
                            "Invalid float value");
3731
                    }
3732
                    return res;
3733
                };
3734
                SCN_TRY_ASSIGN(it, do_read_source_impl(r, cb, cb));
3735
            }
3736
        }
3737
268
        else {
3738
268
            SCN_TRY_ASSIGN(
3739
0
                it,
3740
0
                do_read_source_impl(
3741
0
                    r, [&](const auto& rr) { return read_regular_float(rr); },
3742
0
                    [&](const auto& rr) { return read_hexfloat(rr); }));
3743
0
        }
3744
3745
268
        SCN_EXPECT(m_kind != float_kind::tbd);
3746
3747
0
        if (m_kind != float_kind::inf_short && m_kind != float_kind::inf_long &&
3748
0
            m_kind != float_kind::nan_simple &&
3749
0
            m_kind != float_kind::nan_with_payload) {
3750
0
            this->m_buffer.assign(ranges::subrange{digits_begin, it});
3751
0
        }
3752
3753
0
        handle_separators();
3754
3755
0
        if (!m_thsep_indices.empty()) {
3756
0
            SCN_EXPECT(m_integral_part_length >= 0);
3757
0
            if (auto e = check_thsep_grouping(
3758
0
                    ranges::subrange{
3759
0
                        digits_begin,
3760
0
                        ranges::next(digits_begin, m_integral_part_length)},
3761
0
                    m_thsep_indices, m_locale_options.grouping);
3762
0
                SCN_UNLIKELY(!e)) {
3763
0
                return unexpected(e);
3764
0
            }
3765
0
        }
3766
3767
0
        return it;
3768
0
    }
_ZN3scn2v34impl12float_readerIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3704
922
    {
3705
922
        SCN_TRY(sign_result,
3706
922
                parse_numeric_sign(range).transform_error(make_eof_scan_error));
3707
922
        auto it = sign_result.first;
3708
922
        m_sign = sign_result.second;
3709
3710
922
        auto digits_begin = it;
3711
922
        auto r = ranges::subrange{it, range.end()};
3712
        if constexpr (ranges::contiguous_range<Range> &&
3713
922
                      ranges::sized_range<Range>) {
3714
922
            if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 ||
3715
922
                             m_locale_options.decimal_point != CharT{'.'})) {
3716
0
                SCN_TRY_ASSIGN(
3717
0
                    it,
3718
0
                    do_read_source_impl(
3719
0
                        r,
3720
0
                        [&](const auto& rr) { return read_regular_float(rr); },
3721
0
                        [&](const auto& rr) { return read_hexfloat(rr); }));
3722
0
            }
3723
922
            else {
3724
922
                auto cb = [&](const auto& rr)
3725
922
                    -> scan_expected<ranges::const_iterator_t<decltype(rr)>> {
3726
922
                    auto res = read_all(rr);
3727
922
                    if (SCN_UNLIKELY(res == r.begin())) {
3728
922
                        return unexpected_scan_error(
3729
922
                            scan_error::invalid_scanned_value,
3730
922
                            "Invalid float value");
3731
922
                    }
3732
922
                    return res;
3733
922
                };
3734
922
                SCN_TRY_ASSIGN(it, do_read_source_impl(r, cb, cb));
3735
896
            }
3736
        }
3737
        else {
3738
            SCN_TRY_ASSIGN(
3739
                it,
3740
                do_read_source_impl(
3741
                    r, [&](const auto& rr) { return read_regular_float(rr); },
3742
                    [&](const auto& rr) { return read_hexfloat(rr); }));
3743
        }
3744
3745
922
        SCN_EXPECT(m_kind != float_kind::tbd);
3746
3747
896
        if (m_kind != float_kind::inf_short && m_kind != float_kind::inf_long &&
3748
896
            m_kind != float_kind::nan_simple &&
3749
896
            m_kind != float_kind::nan_with_payload) {
3750
896
            this->m_buffer.assign(ranges::subrange{digits_begin, it});
3751
896
        }
3752
3753
896
        handle_separators();
3754
3755
896
        if (!m_thsep_indices.empty()) {
3756
0
            SCN_EXPECT(m_integral_part_length >= 0);
3757
0
            if (auto e = check_thsep_grouping(
3758
0
                    ranges::subrange{
3759
0
                        digits_begin,
3760
0
                        ranges::next(digits_begin, m_integral_part_length)},
3761
0
                    m_thsep_indices, m_locale_options.grouping);
3762
0
                SCN_UNLIKELY(!e)) {
3763
0
                return unexpected(e);
3764
0
            }
3765
0
        }
3766
3767
896
        return it;
3768
896
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v34impl12float_readerIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_
Line
Count
Source
3704
142
    {
3705
142
        SCN_TRY(sign_result,
3706
142
                parse_numeric_sign(range).transform_error(make_eof_scan_error));
3707
142
        auto it = sign_result.first;
3708
142
        m_sign = sign_result.second;
3709
3710
142
        auto digits_begin = it;
3711
142
        auto r = ranges::subrange{it, range.end()};
3712
        if constexpr (ranges::contiguous_range<Range> &&
3713
                      ranges::sized_range<Range>) {
3714
            if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 ||
3715
                             m_locale_options.decimal_point != CharT{'.'})) {
3716
                SCN_TRY_ASSIGN(
3717
                    it,
3718
                    do_read_source_impl(
3719
                        r,
3720
                        [&](const auto& rr) { return read_regular_float(rr); },
3721
                        [&](const auto& rr) { return read_hexfloat(rr); }));
3722
            }
3723
            else {
3724
                auto cb = [&](const auto& rr)
3725
                    -> scan_expected<ranges::const_iterator_t<decltype(rr)>> {
3726
                    auto res = read_all(rr);
3727
                    if (SCN_UNLIKELY(res == r.begin())) {
3728
                        return unexpected_scan_error(
3729
                            scan_error::invalid_scanned_value,
3730
                            "Invalid float value");
3731
                    }
3732
                    return res;
3733
                };
3734
                SCN_TRY_ASSIGN(it, do_read_source_impl(r, cb, cb));
3735
            }
3736
        }
3737
142
        else {
3738
142
            SCN_TRY_ASSIGN(
3739
0
                it,
3740
0
                do_read_source_impl(
3741
0
                    r, [&](const auto& rr) { return read_regular_float(rr); },
3742
0
                    [&](const auto& rr) { return read_hexfloat(rr); }));
3743
0
        }
3744
3745
142
        SCN_EXPECT(m_kind != float_kind::tbd);
3746
3747
0
        if (m_kind != float_kind::inf_short && m_kind != float_kind::inf_long &&
3748
0
            m_kind != float_kind::nan_simple &&
3749
0
            m_kind != float_kind::nan_with_payload) {
3750
0
            this->m_buffer.assign(ranges::subrange{digits_begin, it});
3751
0
        }
3752
3753
0
        handle_separators();
3754
3755
0
        if (!m_thsep_indices.empty()) {
3756
0
            SCN_EXPECT(m_integral_part_length >= 0);
3757
0
            if (auto e = check_thsep_grouping(
3758
0
                    ranges::subrange{
3759
0
                        digits_begin,
3760
0
                        ranges::next(digits_begin, m_integral_part_length)},
3761
0
                    m_thsep_indices, m_locale_options.grouping);
3762
0
                SCN_UNLIKELY(!e)) {
3763
0
                return unexpected(e);
3764
0
            }
3765
0
        }
3766
3767
0
        return it;
3768
0
    }
_ZN3scn2v34impl12float_readerIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3704
13.4k
    {
3705
13.4k
        SCN_TRY(sign_result,
3706
13.4k
                parse_numeric_sign(range).transform_error(make_eof_scan_error));
3707
13.4k
        auto it = sign_result.first;
3708
13.4k
        m_sign = sign_result.second;
3709
3710
13.4k
        auto digits_begin = it;
3711
13.4k
        auto r = ranges::subrange{it, range.end()};
3712
        if constexpr (ranges::contiguous_range<Range> &&
3713
13.4k
                      ranges::sized_range<Range>) {
3714
13.4k
            if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 ||
3715
13.4k
                             m_locale_options.decimal_point != CharT{'.'})) {
3716
0
                SCN_TRY_ASSIGN(
3717
0
                    it,
3718
0
                    do_read_source_impl(
3719
0
                        r,
3720
0
                        [&](const auto& rr) { return read_regular_float(rr); },
3721
0
                        [&](const auto& rr) { return read_hexfloat(rr); }));
3722
0
            }
3723
13.4k
            else {
3724
13.4k
                auto cb = [&](const auto& rr)
3725
13.4k
                    -> scan_expected<ranges::const_iterator_t<decltype(rr)>> {
3726
13.4k
                    auto res = read_all(rr);
3727
13.4k
                    if (SCN_UNLIKELY(res == r.begin())) {
3728
13.4k
                        return unexpected_scan_error(
3729
13.4k
                            scan_error::invalid_scanned_value,
3730
13.4k
                            "Invalid float value");
3731
13.4k
                    }
3732
13.4k
                    return res;
3733
13.4k
                };
3734
13.4k
                SCN_TRY_ASSIGN(it, do_read_source_impl(r, cb, cb));
3735
13.4k
            }
3736
        }
3737
        else {
3738
            SCN_TRY_ASSIGN(
3739
                it,
3740
                do_read_source_impl(
3741
                    r, [&](const auto& rr) { return read_regular_float(rr); },
3742
                    [&](const auto& rr) { return read_hexfloat(rr); }));
3743
        }
3744
3745
13.4k
        SCN_EXPECT(m_kind != float_kind::tbd);
3746
3747
13.4k
        if (m_kind != float_kind::inf_short && m_kind != float_kind::inf_long &&
3748
13.4k
            m_kind != float_kind::nan_simple &&
3749
13.4k
            m_kind != float_kind::nan_with_payload) {
3750
13.4k
            this->m_buffer.assign(ranges::subrange{digits_begin, it});
3751
13.4k
        }
3752
3753
13.4k
        handle_separators();
3754
3755
13.4k
        if (!m_thsep_indices.empty()) {
3756
0
            SCN_EXPECT(m_integral_part_length >= 0);
3757
0
            if (auto e = check_thsep_grouping(
3758
0
                    ranges::subrange{
3759
0
                        digits_begin,
3760
0
                        ranges::next(digits_begin, m_integral_part_length)},
3761
0
                    m_thsep_indices, m_locale_options.grouping);
3762
0
                SCN_UNLIKELY(!e)) {
3763
0
                return unexpected(e);
3764
0
            }
3765
0
        }
3766
3767
13.4k
        return it;
3768
13.4k
    }
3769
3770
    template <typename Range>
3771
    auto read_dec_digits(Range range, bool thsep_allowed)
3772
        -> parse_expected<ranges::const_iterator_t<Range>>
3773
432
    {
3774
432
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3775
432
                         thsep_allowed)) {
3776
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3777
0
                return char_to_int(ch) < 10 ||
3778
0
                       ch == m_locale_options.thousands_sep;
3779
0
            });
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlwE_clEw
3780
0
        }
3781
3782
432
        return read_while1_code_unit(
3783
432
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlcE0_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlcE0_clEc
_ZZN3scn2v34impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlcE0_clEc
Line
Count
Source
3783
264
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
_ZZN3scn2v34impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlcE0_clEc
Line
Count
Source
3783
26
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlwE0_clEw
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlwE0_clEw
_ZZN3scn2v34impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlwE0_clEw
Line
Count
Source
3783
136
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
_ZZN3scn2v34impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlwE0_clEw
Line
Count
Source
3783
6
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
3784
432
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_b
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_b
_ZN3scn2v34impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_b
Line
Count
Source
3773
264
    {
3774
264
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3775
264
                         thsep_allowed)) {
3776
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3777
0
                return char_to_int(ch) < 10 ||
3778
0
                       ch == m_locale_options.thousands_sep;
3779
0
            });
3780
0
        }
3781
3782
264
        return read_while1_code_unit(
3783
264
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
3784
264
    }
_ZN3scn2v34impl12float_readerIcE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_b
Line
Count
Source
3773
26
    {
3774
26
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3775
26
                         thsep_allowed)) {
3776
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3777
0
                return char_to_int(ch) < 10 ||
3778
0
                       ch == m_locale_options.thousands_sep;
3779
0
            });
3780
0
        }
3781
3782
26
        return read_while1_code_unit(
3783
26
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
3784
26
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_b
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_b
_ZN3scn2v34impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_b
Line
Count
Source
3773
136
    {
3774
136
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3775
136
                         thsep_allowed)) {
3776
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3777
0
                return char_to_int(ch) < 10 ||
3778
0
                       ch == m_locale_options.thousands_sep;
3779
0
            });
3780
0
        }
3781
3782
136
        return read_while1_code_unit(
3783
136
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
3784
136
    }
_ZN3scn2v34impl12float_readerIwE15read_dec_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_b
Line
Count
Source
3773
6
    {
3774
6
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3775
6
                         thsep_allowed)) {
3776
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3777
0
                return char_to_int(ch) < 10 ||
3778
0
                       ch == m_locale_options.thousands_sep;
3779
0
            });
3780
0
        }
3781
3782
6
        return read_while1_code_unit(
3783
6
            range, [](char_type ch) noexcept { return char_to_int(ch) < 10; });
3784
6
    }
3785
    template <typename Range>
3786
    auto read_hex_digits(Range range, bool thsep_allowed)
3787
        -> parse_expected<ranges::const_iterator_t<Range>>
3788
10
    {
3789
10
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3790
10
                         thsep_allowed)) {
3791
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3792
0
                return char_to_int(ch) < 16 ||
3793
0
                       ch == m_locale_options.thousands_sep;
3794
0
            });
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlwE_clEw
3795
0
        }
3796
3797
10
        return read_while1_code_unit(
3798
10
            range, [](char_type ch) noexcept { return char_to_int(ch) < 16; });
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlcE0_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlcE0_clEc
_ZZN3scn2v34impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlcE0_clEc
Line
Count
Source
3798
4
            range, [](char_type ch) noexcept { return char_to_int(ch) < 16; });
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlcE0_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_bENKUlwE0_clEw
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_bENKUlwE0_clEw
_ZZN3scn2v34impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_bENKUlwE0_clEw
Line
Count
Source
3798
6
            range, [](char_type ch) noexcept { return char_to_int(ch) < 16; });
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_bENKUlwE0_clEw
3799
10
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_b
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_b
_ZN3scn2v34impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_b
Line
Count
Source
3788
4
    {
3789
4
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3790
4
                         thsep_allowed)) {
3791
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3792
0
                return char_to_int(ch) < 16 ||
3793
0
                       ch == m_locale_options.thousands_sep;
3794
0
            });
3795
0
        }
3796
3797
4
        return read_while1_code_unit(
3798
4
            range, [](char_type ch) noexcept { return char_to_int(ch) < 16; });
3799
4
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_b
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_b
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_b
_ZN3scn2v34impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_b
Line
Count
Source
3788
6
    {
3789
6
        if (SCN_UNLIKELY(m_locale_options.thousands_sep != 0 &&
3790
6
                         thsep_allowed)) {
3791
0
            return read_while1_code_unit(range, [&](char_type ch) noexcept {
3792
0
                return char_to_int(ch) < 16 ||
3793
0
                       ch == m_locale_options.thousands_sep;
3794
0
            });
3795
0
        }
3796
3797
6
        return read_while1_code_unit(
3798
6
            range, [](char_type ch) noexcept { return char_to_int(ch) < 16; });
3799
6
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE15read_hex_digitsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_b
3800
    template <typename Range>
3801
    auto read_hex_prefix(Range range)
3802
        -> parse_expected<ranges::const_iterator_t<Range>>
3803
14.7k
    {
3804
14.7k
        return read_matching_string_classic_nocase(range, "0x");
3805
14.7k
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v34impl12float_readerIcE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3803
250
    {
3804
250
        return read_matching_string_classic_nocase(range, "0x");
3805
250
    }
_ZN3scn2v34impl12float_readerIcE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3803
896
    {
3804
896
        return read_matching_string_classic_nocase(range, "0x");
3805
896
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v34impl12float_readerIwE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3803
134
    {
3804
134
        return read_matching_string_classic_nocase(range, "0x");
3805
134
    }
_ZN3scn2v34impl12float_readerIwE15read_hex_prefixINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3803
13.4k
    {
3804
13.4k
        return read_matching_string_classic_nocase(range, "0x");
3805
13.4k
    }
3806
3807
    template <typename Range>
3808
    auto read_inf(Range range)
3809
        -> parse_expected<ranges::const_iterator_t<Range>>
3810
14.7k
    {
3811
14.7k
        auto it = range.begin();
3812
14.7k
        if (auto r = read_matching_string_classic_nocase(range, "inf"); !r) {
3813
14.7k
            return unexpected(r.error());
3814
14.7k
        }
3815
0
        else {
3816
0
            it = *r;
3817
0
        }
3818
3819
0
        if (auto r = read_matching_string_classic_nocase(
3820
0
                ranges::subrange{it, range.end()}, "inity");
3821
0
            !r) {
3822
0
            m_kind = float_kind::inf_short;
3823
0
            return it;
3824
0
        }
3825
0
        else {
3826
0
            m_kind = float_kind::inf_long;
3827
0
            return *r;
3828
0
        }
3829
0
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE8read_infINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE8read_infINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v34impl12float_readerIcE8read_infINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3810
268
    {
3811
268
        auto it = range.begin();
3812
268
        if (auto r = read_matching_string_classic_nocase(range, "inf"); !r) {
3813
268
            return unexpected(r.error());
3814
268
        }
3815
0
        else {
3816
0
            it = *r;
3817
0
        }
3818
3819
0
        if (auto r = read_matching_string_classic_nocase(
3820
0
                ranges::subrange{it, range.end()}, "inity");
3821
0
            !r) {
3822
0
            m_kind = float_kind::inf_short;
3823
0
            return it;
3824
0
        }
3825
0
        else {
3826
0
            m_kind = float_kind::inf_long;
3827
0
            return *r;
3828
0
        }
3829
0
    }
_ZN3scn2v34impl12float_readerIcE8read_infINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3810
922
    {
3811
922
        auto it = range.begin();
3812
922
        if (auto r = read_matching_string_classic_nocase(range, "inf"); !r) {
3813
922
            return unexpected(r.error());
3814
922
        }
3815
0
        else {
3816
0
            it = *r;
3817
0
        }
3818
3819
0
        if (auto r = read_matching_string_classic_nocase(
3820
0
                ranges::subrange{it, range.end()}, "inity");
3821
0
            !r) {
3822
0
            m_kind = float_kind::inf_short;
3823
0
            return it;
3824
0
        }
3825
0
        else {
3826
0
            m_kind = float_kind::inf_long;
3827
0
            return *r;
3828
0
        }
3829
0
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE8read_infINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE8read_infINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v34impl12float_readerIwE8read_infINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3810
142
    {
3811
142
        auto it = range.begin();
3812
142
        if (auto r = read_matching_string_classic_nocase(range, "inf"); !r) {
3813
142
            return unexpected(r.error());
3814
142
        }
3815
0
        else {
3816
0
            it = *r;
3817
0
        }
3818
3819
0
        if (auto r = read_matching_string_classic_nocase(
3820
0
                ranges::subrange{it, range.end()}, "inity");
3821
0
            !r) {
3822
0
            m_kind = float_kind::inf_short;
3823
0
            return it;
3824
0
        }
3825
0
        else {
3826
0
            m_kind = float_kind::inf_long;
3827
0
            return *r;
3828
0
        }
3829
0
    }
_ZN3scn2v34impl12float_readerIwE8read_infINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS1_14parse_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3810
13.4k
    {
3811
13.4k
        auto it = range.begin();
3812
13.4k
        if (auto r = read_matching_string_classic_nocase(range, "inf"); !r) {
3813
13.4k
            return unexpected(r.error());
3814
13.4k
        }
3815
0
        else {
3816
0
            it = *r;
3817
0
        }
3818
3819
0
        if (auto r = read_matching_string_classic_nocase(
3820
0
                ranges::subrange{it, range.end()}, "inity");
3821
0
            !r) {
3822
0
            m_kind = float_kind::inf_short;
3823
0
            return it;
3824
0
        }
3825
0
        else {
3826
0
            m_kind = float_kind::inf_long;
3827
0
            return *r;
3828
0
        }
3829
0
    }
3830
3831
    template <typename Range>
3832
    auto read_nan(Range range) -> scan_expected<ranges::const_iterator_t<Range>>
3833
14.7k
    {
3834
14.7k
        auto it = range.begin();
3835
14.7k
        if (auto r = read_matching_string_classic_nocase(range, "nan"); !r) {
3836
14.7k
            return r.transform_error(map_parse_error_to_scan_error(
3837
14.7k
                scan_error::invalid_scanned_value,
3838
14.7k
                "Invalid floating-point NaN value"));
3839
14.7k
        }
3840
0
        else {
3841
0
            it = *r;
3842
0
        }
3843
3844
0
        if (auto r =
3845
0
                read_matching_code_unit(ranges::subrange{it, range.end()}, '(');
3846
0
            !r) {
3847
0
            m_kind = float_kind::nan_simple;
3848
0
            return it;
3849
0
        }
3850
0
        else {
3851
0
            it = *r;
3852
0
        }
3853
3854
0
        auto payload_beg_it = it;
3855
0
        it = read_while_code_unit(
3856
0
            ranges::subrange{it, range.end()}, [](char_type ch) noexcept {
3857
0
                return is_ascii_char(ch) &&
3858
0
                       ((ch >= '0' && ch <= '9') || (ch >= 'a' && ch <= 'z') ||
3859
0
                        (ch >= 'A' && ch <= 'Z') || ch == '_');
3860
0
            });
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_ENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_ENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_ENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_ENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_ENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_ENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_ENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_ENKUlwE_clEw
3861
0
        m_nan_payload_buffer.assign(ranges::subrange{payload_beg_it, it});
3862
3863
0
        m_kind = float_kind::nan_with_payload;
3864
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3865
0
                                             ')')) {
3866
0
            return *r;
3867
0
        }
3868
0
        return unexpected_scan_error(scan_error::invalid_scanned_value,
3869
0
                                     "Invalid floating-point NaN payload");
3870
0
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v34impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3833
268
    {
3834
268
        auto it = range.begin();
3835
268
        if (auto r = read_matching_string_classic_nocase(range, "nan"); !r) {
3836
268
            return r.transform_error(map_parse_error_to_scan_error(
3837
268
                scan_error::invalid_scanned_value,
3838
268
                "Invalid floating-point NaN value"));
3839
268
        }
3840
0
        else {
3841
0
            it = *r;
3842
0
        }
3843
3844
0
        if (auto r =
3845
0
                read_matching_code_unit(ranges::subrange{it, range.end()}, '(');
3846
0
            !r) {
3847
0
            m_kind = float_kind::nan_simple;
3848
0
            return it;
3849
0
        }
3850
0
        else {
3851
0
            it = *r;
3852
0
        }
3853
3854
0
        auto payload_beg_it = it;
3855
0
        it = read_while_code_unit(
3856
0
            ranges::subrange{it, range.end()}, [](char_type ch) noexcept {
3857
0
                return is_ascii_char(ch) &&
3858
0
                       ((ch >= '0' && ch <= '9') || (ch >= 'a' && ch <= 'z') ||
3859
0
                        (ch >= 'A' && ch <= 'Z') || ch == '_');
3860
0
            });
3861
0
        m_nan_payload_buffer.assign(ranges::subrange{payload_beg_it, it});
3862
3863
0
        m_kind = float_kind::nan_with_payload;
3864
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3865
0
                                             ')')) {
3866
0
            return *r;
3867
0
        }
3868
0
        return unexpected_scan_error(scan_error::invalid_scanned_value,
3869
0
                                     "Invalid floating-point NaN payload");
3870
0
    }
_ZN3scn2v34impl12float_readerIcE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3833
922
    {
3834
922
        auto it = range.begin();
3835
922
        if (auto r = read_matching_string_classic_nocase(range, "nan"); !r) {
3836
922
            return r.transform_error(map_parse_error_to_scan_error(
3837
922
                scan_error::invalid_scanned_value,
3838
922
                "Invalid floating-point NaN value"));
3839
922
        }
3840
0
        else {
3841
0
            it = *r;
3842
0
        }
3843
3844
0
        if (auto r =
3845
0
                read_matching_code_unit(ranges::subrange{it, range.end()}, '(');
3846
0
            !r) {
3847
0
            m_kind = float_kind::nan_simple;
3848
0
            return it;
3849
0
        }
3850
0
        else {
3851
0
            it = *r;
3852
0
        }
3853
3854
0
        auto payload_beg_it = it;
3855
0
        it = read_while_code_unit(
3856
0
            ranges::subrange{it, range.end()}, [](char_type ch) noexcept {
3857
0
                return is_ascii_char(ch) &&
3858
0
                       ((ch >= '0' && ch <= '9') || (ch >= 'a' && ch <= 'z') ||
3859
0
                        (ch >= 'A' && ch <= 'Z') || ch == '_');
3860
0
            });
3861
0
        m_nan_payload_buffer.assign(ranges::subrange{payload_beg_it, it});
3862
3863
0
        m_kind = float_kind::nan_with_payload;
3864
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3865
0
                                             ')')) {
3866
0
            return *r;
3867
0
        }
3868
0
        return unexpected_scan_error(scan_error::invalid_scanned_value,
3869
0
                                     "Invalid floating-point NaN payload");
3870
0
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v34impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3833
142
    {
3834
142
        auto it = range.begin();
3835
142
        if (auto r = read_matching_string_classic_nocase(range, "nan"); !r) {
3836
142
            return r.transform_error(map_parse_error_to_scan_error(
3837
142
                scan_error::invalid_scanned_value,
3838
142
                "Invalid floating-point NaN value"));
3839
142
        }
3840
0
        else {
3841
0
            it = *r;
3842
0
        }
3843
3844
0
        if (auto r =
3845
0
                read_matching_code_unit(ranges::subrange{it, range.end()}, '(');
3846
0
            !r) {
3847
0
            m_kind = float_kind::nan_simple;
3848
0
            return it;
3849
0
        }
3850
0
        else {
3851
0
            it = *r;
3852
0
        }
3853
3854
0
        auto payload_beg_it = it;
3855
0
        it = read_while_code_unit(
3856
0
            ranges::subrange{it, range.end()}, [](char_type ch) noexcept {
3857
0
                return is_ascii_char(ch) &&
3858
0
                       ((ch >= '0' && ch <= '9') || (ch >= 'a' && ch <= 'z') ||
3859
0
                        (ch >= 'A' && ch <= 'Z') || ch == '_');
3860
0
            });
3861
0
        m_nan_payload_buffer.assign(ranges::subrange{payload_beg_it, it});
3862
3863
0
        m_kind = float_kind::nan_with_payload;
3864
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3865
0
                                             ')')) {
3866
0
            return *r;
3867
0
        }
3868
0
        return unexpected_scan_error(scan_error::invalid_scanned_value,
3869
0
                                     "Invalid floating-point NaN payload");
3870
0
    }
_ZN3scn2v34impl12float_readerIwE8read_nanINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3833
13.4k
    {
3834
13.4k
        auto it = range.begin();
3835
13.4k
        if (auto r = read_matching_string_classic_nocase(range, "nan"); !r) {
3836
13.4k
            return r.transform_error(map_parse_error_to_scan_error(
3837
13.4k
                scan_error::invalid_scanned_value,
3838
13.4k
                "Invalid floating-point NaN value"));
3839
13.4k
        }
3840
0
        else {
3841
0
            it = *r;
3842
0
        }
3843
3844
0
        if (auto r =
3845
0
                read_matching_code_unit(ranges::subrange{it, range.end()}, '(');
3846
0
            !r) {
3847
0
            m_kind = float_kind::nan_simple;
3848
0
            return it;
3849
0
        }
3850
0
        else {
3851
0
            it = *r;
3852
0
        }
3853
3854
0
        auto payload_beg_it = it;
3855
0
        it = read_while_code_unit(
3856
0
            ranges::subrange{it, range.end()}, [](char_type ch) noexcept {
3857
0
                return is_ascii_char(ch) &&
3858
0
                       ((ch >= '0' && ch <= '9') || (ch >= 'a' && ch <= 'z') ||
3859
0
                        (ch >= 'A' && ch <= 'Z') || ch == '_');
3860
0
            });
3861
0
        m_nan_payload_buffer.assign(ranges::subrange{payload_beg_it, it});
3862
3863
0
        m_kind = float_kind::nan_with_payload;
3864
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3865
0
                                             ')')) {
3866
0
            return *r;
3867
0
        }
3868
0
        return unexpected_scan_error(scan_error::invalid_scanned_value,
3869
0
                                     "Invalid floating-point NaN payload");
3870
0
    }
3871
3872
    template <typename Range>
3873
    auto read_exponent(Range range, std::string_view exp)
3874
        -> ranges::const_iterator_t<Range>
3875
0
    {
3876
0
        if (auto r = read_one_of_code_unit(range, exp)) {
3877
0
            auto beg_exp_it = range.begin();
3878
0
            auto it = *r;
3879
3880
0
            if (auto r_sign =
3881
0
                    parse_numeric_sign(ranges::subrange{it, range.end()})) {
3882
0
                it = r_sign->first;
3883
0
            }
3884
3885
0
            if (auto r_exp = read_while1_code_unit(
3886
0
                    ranges::subrange{it, range.end()},
3887
0
                    [](char_type ch) noexcept { return char_to_int(ch) < 10; });
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESP_NSN_17basic_string_viewIcNSN_11char_traitsIcEEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_NSK_17basic_string_viewIcNSK_11char_traitsIcEEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NSC_17basic_string_viewIcNSC_11char_traitsIcEEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESP_NSN_17basic_string_viewIcNSN_11char_traitsIcEEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_NSK_17basic_string_viewIcNSK_11char_traitsIcEEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NSC_17basic_string_viewIcNSC_11char_traitsIcEEEEENKUlwE_clEw
3888
0
                SCN_UNLIKELY(!r_exp)) {
3889
0
                it = beg_exp_it;
3890
0
            }
3891
0
            else {
3892
0
                it = *r_exp;
3893
0
            }
3894
3895
0
            return it;
3896
0
        }
3897
0
        return range.begin();
3898
0
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESP_NSN_17basic_string_viewIcNSN_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_NSK_17basic_string_viewIcNSK_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NSC_17basic_string_viewIcNSC_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESP_NSN_17basic_string_viewIcNSN_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESM_NSK_17basic_string_viewIcNSK_11char_traitsIcEEEE
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE13read_exponentINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEEDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEESE_NSC_17basic_string_viewIcNSC_11char_traitsIcEEEE
3899
3900
    template <typename Range>
3901
    auto read_hexfloat(Range range)
3902
        -> scan_expected<ranges::const_iterator_t<Range>>
3903
10
    {
3904
10
        auto it = range.begin();
3905
3906
10
        std::ptrdiff_t digits_count = 0;
3907
10
        if (auto r = read_hex_digits(ranges::subrange{it, range.end()}, true);
3908
10
            SCN_UNLIKELY(!r)) {
3909
10
            return r.transform_error(map_parse_error_to_scan_error(
3910
10
                scan_error::invalid_scanned_value,
3911
10
                "Invalid hexadecimal floating-point value"));
3912
10
        }
3913
0
        else {
3914
0
            digits_count += ranges::distance(it, *r);
3915
0
            it = *r;
3916
0
        }
3917
3918
0
        m_integral_part_length = digits_count;
3919
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3920
0
                                             m_locale_options.decimal_point)) {
3921
0
            it = *r;
3922
0
        }
3923
3924
0
        if (auto r =
3925
0
                read_hex_digits(ranges::subrange{it, range.end()}, false)) {
3926
0
            digits_count += ranges::distance(it, *r);
3927
0
            it = *r;
3928
0
        }
3929
3930
0
        if (SCN_UNLIKELY(digits_count == 0)) {
3931
0
            return unexpected_scan_error(scan_error::invalid_scanned_value,
3932
0
                                         "No significand digits in hexfloat");
3933
0
        }
3934
3935
0
        it = read_exponent(ranges::subrange{it, range.end()}, "pP");
3936
3937
0
        return it;
3938
0
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v34impl12float_readerIcE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3903
4
    {
3904
4
        auto it = range.begin();
3905
3906
4
        std::ptrdiff_t digits_count = 0;
3907
4
        if (auto r = read_hex_digits(ranges::subrange{it, range.end()}, true);
3908
4
            SCN_UNLIKELY(!r)) {
3909
4
            return r.transform_error(map_parse_error_to_scan_error(
3910
4
                scan_error::invalid_scanned_value,
3911
4
                "Invalid hexadecimal floating-point value"));
3912
4
        }
3913
0
        else {
3914
0
            digits_count += ranges::distance(it, *r);
3915
0
            it = *r;
3916
0
        }
3917
3918
0
        m_integral_part_length = digits_count;
3919
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3920
0
                                             m_locale_options.decimal_point)) {
3921
0
            it = *r;
3922
0
        }
3923
3924
0
        if (auto r =
3925
0
                read_hex_digits(ranges::subrange{it, range.end()}, false)) {
3926
0
            digits_count += ranges::distance(it, *r);
3927
0
            it = *r;
3928
0
        }
3929
3930
0
        if (SCN_UNLIKELY(digits_count == 0)) {
3931
0
            return unexpected_scan_error(scan_error::invalid_scanned_value,
3932
0
                                         "No significand digits in hexfloat");
3933
0
        }
3934
3935
0
        it = read_exponent(ranges::subrange{it, range.end()}, "pP");
3936
3937
0
        return it;
3938
0
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v34impl12float_readerIwE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3903
6
    {
3904
6
        auto it = range.begin();
3905
3906
6
        std::ptrdiff_t digits_count = 0;
3907
6
        if (auto r = read_hex_digits(ranges::subrange{it, range.end()}, true);
3908
6
            SCN_UNLIKELY(!r)) {
3909
6
            return r.transform_error(map_parse_error_to_scan_error(
3910
6
                scan_error::invalid_scanned_value,
3911
6
                "Invalid hexadecimal floating-point value"));
3912
6
        }
3913
0
        else {
3914
0
            digits_count += ranges::distance(it, *r);
3915
0
            it = *r;
3916
0
        }
3917
3918
0
        m_integral_part_length = digits_count;
3919
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3920
0
                                             m_locale_options.decimal_point)) {
3921
0
            it = *r;
3922
0
        }
3923
3924
0
        if (auto r =
3925
0
                read_hex_digits(ranges::subrange{it, range.end()}, false)) {
3926
0
            digits_count += ranges::distance(it, *r);
3927
0
            it = *r;
3928
0
        }
3929
3930
0
        if (SCN_UNLIKELY(digits_count == 0)) {
3931
0
            return unexpected_scan_error(scan_error::invalid_scanned_value,
3932
0
                                         "No significand digits in hexfloat");
3933
0
        }
3934
3935
0
        it = read_exponent(ranges::subrange{it, range.end()}, "pP");
3936
3937
0
        return it;
3938
0
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE13read_hexfloatINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
3939
3940
    template <typename Range>
3941
    auto read_regular_float(Range range)
3942
        -> scan_expected<ranges::const_iterator_t<Range>>
3943
432
    {
3944
432
        const bool allowed_exp = (m_options & allow_scientific) != 0;
3945
432
        const bool required_exp = allowed_exp && (m_options & allow_fixed) == 0;
3946
3947
432
        auto it = ranges::begin(range);
3948
432
        std::ptrdiff_t digits_count = 0;
3949
3950
432
        if (auto r = read_dec_digits(ranges::subrange{it, range.end()}, true);
3951
432
            SCN_UNLIKELY(!r)) {
3952
432
            return r.transform_error(
3953
432
                map_parse_error_to_scan_error(scan_error::invalid_scanned_value,
3954
432
                                              "Invalid floating-point value"));
3955
432
        }
3956
0
        else {
3957
0
            digits_count += ranges::distance(it, *r);
3958
0
            it = *r;
3959
0
        }
3960
3961
0
        m_integral_part_length = digits_count;
3962
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3963
0
                                             m_locale_options.decimal_point)) {
3964
0
            it = *r;
3965
0
        }
3966
3967
0
        if (auto r =
3968
0
                read_dec_digits(ranges::subrange{it, range.end()}, false)) {
3969
0
            digits_count += ranges::distance(it, *r);
3970
0
            it = *r;
3971
0
        }
3972
3973
0
        if (SCN_UNLIKELY(digits_count == 0)) {
3974
0
            return unexpected_scan_error(scan_error::invalid_scanned_value,
3975
0
                                         "No significand digits in float");
3976
0
        }
3977
3978
0
        auto beg_exp_it = it;
3979
0
        if (allowed_exp) {
3980
0
            it = read_exponent(ranges::subrange{it, range.end()}, "eE");
3981
0
        }
3982
0
        if (required_exp && beg_exp_it == it) {
3983
0
            return unexpected_scan_error(
3984
0
                scan_error::invalid_scanned_value,
3985
0
                "No exponent given to scientific float");
3986
0
        }
3987
3988
0
        m_kind =
3989
0
            (beg_exp_it == it) ? float_kind::fixed : float_kind::scientific;
3990
3991
0
        return it;
3992
0
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v34impl12float_readerIcE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3943
264
    {
3944
264
        const bool allowed_exp = (m_options & allow_scientific) != 0;
3945
264
        const bool required_exp = allowed_exp && (m_options & allow_fixed) == 0;
3946
3947
264
        auto it = ranges::begin(range);
3948
264
        std::ptrdiff_t digits_count = 0;
3949
3950
264
        if (auto r = read_dec_digits(ranges::subrange{it, range.end()}, true);
3951
264
            SCN_UNLIKELY(!r)) {
3952
264
            return r.transform_error(
3953
264
                map_parse_error_to_scan_error(scan_error::invalid_scanned_value,
3954
264
                                              "Invalid floating-point value"));
3955
264
        }
3956
0
        else {
3957
0
            digits_count += ranges::distance(it, *r);
3958
0
            it = *r;
3959
0
        }
3960
3961
0
        m_integral_part_length = digits_count;
3962
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3963
0
                                             m_locale_options.decimal_point)) {
3964
0
            it = *r;
3965
0
        }
3966
3967
0
        if (auto r =
3968
0
                read_dec_digits(ranges::subrange{it, range.end()}, false)) {
3969
0
            digits_count += ranges::distance(it, *r);
3970
0
            it = *r;
3971
0
        }
3972
3973
0
        if (SCN_UNLIKELY(digits_count == 0)) {
3974
0
            return unexpected_scan_error(scan_error::invalid_scanned_value,
3975
0
                                         "No significand digits in float");
3976
0
        }
3977
3978
0
        auto beg_exp_it = it;
3979
0
        if (allowed_exp) {
3980
0
            it = read_exponent(ranges::subrange{it, range.end()}, "eE");
3981
0
        }
3982
0
        if (required_exp && beg_exp_it == it) {
3983
0
            return unexpected_scan_error(
3984
0
                scan_error::invalid_scanned_value,
3985
0
                "No exponent given to scientific float");
3986
0
        }
3987
3988
0
        m_kind =
3989
0
            (beg_exp_it == it) ? float_kind::fixed : float_kind::scientific;
3990
3991
0
        return it;
3992
0
    }
_ZN3scn2v34impl12float_readerIcE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3943
26
    {
3944
26
        const bool allowed_exp = (m_options & allow_scientific) != 0;
3945
26
        const bool required_exp = allowed_exp && (m_options & allow_fixed) == 0;
3946
3947
26
        auto it = ranges::begin(range);
3948
26
        std::ptrdiff_t digits_count = 0;
3949
3950
26
        if (auto r = read_dec_digits(ranges::subrange{it, range.end()}, true);
3951
26
            SCN_UNLIKELY(!r)) {
3952
26
            return r.transform_error(
3953
26
                map_parse_error_to_scan_error(scan_error::invalid_scanned_value,
3954
26
                                              "Invalid floating-point value"));
3955
26
        }
3956
0
        else {
3957
0
            digits_count += ranges::distance(it, *r);
3958
0
            it = *r;
3959
0
        }
3960
3961
0
        m_integral_part_length = digits_count;
3962
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3963
0
                                             m_locale_options.decimal_point)) {
3964
0
            it = *r;
3965
0
        }
3966
3967
0
        if (auto r =
3968
0
                read_dec_digits(ranges::subrange{it, range.end()}, false)) {
3969
0
            digits_count += ranges::distance(it, *r);
3970
0
            it = *r;
3971
0
        }
3972
3973
0
        if (SCN_UNLIKELY(digits_count == 0)) {
3974
0
            return unexpected_scan_error(scan_error::invalid_scanned_value,
3975
0
                                         "No significand digits in float");
3976
0
        }
3977
3978
0
        auto beg_exp_it = it;
3979
0
        if (allowed_exp) {
3980
0
            it = read_exponent(ranges::subrange{it, range.end()}, "eE");
3981
0
        }
3982
0
        if (required_exp && beg_exp_it == it) {
3983
0
            return unexpected_scan_error(
3984
0
                scan_error::invalid_scanned_value,
3985
0
                "No exponent given to scientific float");
3986
0
        }
3987
3988
0
        m_kind =
3989
0
            (beg_exp_it == it) ? float_kind::fixed : float_kind::scientific;
3990
3991
0
        return it;
3992
0
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESQ_
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_
_ZN3scn2v34impl12float_readerIwE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESN_
Line
Count
Source
3943
136
    {
3944
136
        const bool allowed_exp = (m_options & allow_scientific) != 0;
3945
136
        const bool required_exp = allowed_exp && (m_options & allow_fixed) == 0;
3946
3947
136
        auto it = ranges::begin(range);
3948
136
        std::ptrdiff_t digits_count = 0;
3949
3950
136
        if (auto r = read_dec_digits(ranges::subrange{it, range.end()}, true);
3951
136
            SCN_UNLIKELY(!r)) {
3952
136
            return r.transform_error(
3953
136
                map_parse_error_to_scan_error(scan_error::invalid_scanned_value,
3954
136
                                              "Invalid floating-point value"));
3955
136
        }
3956
0
        else {
3957
0
            digits_count += ranges::distance(it, *r);
3958
0
            it = *r;
3959
0
        }
3960
3961
0
        m_integral_part_length = digits_count;
3962
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3963
0
                                             m_locale_options.decimal_point)) {
3964
0
            it = *r;
3965
0
        }
3966
3967
0
        if (auto r =
3968
0
                read_dec_digits(ranges::subrange{it, range.end()}, false)) {
3969
0
            digits_count += ranges::distance(it, *r);
3970
0
            it = *r;
3971
0
        }
3972
3973
0
        if (SCN_UNLIKELY(digits_count == 0)) {
3974
0
            return unexpected_scan_error(scan_error::invalid_scanned_value,
3975
0
                                         "No significand digits in float");
3976
0
        }
3977
3978
0
        auto beg_exp_it = it;
3979
0
        if (allowed_exp) {
3980
0
            it = read_exponent(ranges::subrange{it, range.end()}, "eE");
3981
0
        }
3982
0
        if (required_exp && beg_exp_it == it) {
3983
0
            return unexpected_scan_error(
3984
0
                scan_error::invalid_scanned_value,
3985
0
                "No exponent given to scientific float");
3986
0
        }
3987
3988
0
        m_kind =
3989
0
            (beg_exp_it == it) ? float_kind::fixed : float_kind::scientific;
3990
3991
0
        return it;
3992
0
    }
_ZN3scn2v34impl12float_readerIwE18read_regular_floatINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_
Line
Count
Source
3943
6
    {
3944
6
        const bool allowed_exp = (m_options & allow_scientific) != 0;
3945
6
        const bool required_exp = allowed_exp && (m_options & allow_fixed) == 0;
3946
3947
6
        auto it = ranges::begin(range);
3948
6
        std::ptrdiff_t digits_count = 0;
3949
3950
6
        if (auto r = read_dec_digits(ranges::subrange{it, range.end()}, true);
3951
6
            SCN_UNLIKELY(!r)) {
3952
6
            return r.transform_error(
3953
6
                map_parse_error_to_scan_error(scan_error::invalid_scanned_value,
3954
6
                                              "Invalid floating-point value"));
3955
6
        }
3956
0
        else {
3957
0
            digits_count += ranges::distance(it, *r);
3958
0
            it = *r;
3959
0
        }
3960
3961
0
        m_integral_part_length = digits_count;
3962
0
        if (auto r = read_matching_code_unit(ranges::subrange{it, range.end()},
3963
0
                                             m_locale_options.decimal_point)) {
3964
0
            it = *r;
3965
0
        }
3966
3967
0
        if (auto r =
3968
0
                read_dec_digits(ranges::subrange{it, range.end()}, false)) {
3969
0
            digits_count += ranges::distance(it, *r);
3970
0
            it = *r;
3971
0
        }
3972
3973
0
        if (SCN_UNLIKELY(digits_count == 0)) {
3974
0
            return unexpected_scan_error(scan_error::invalid_scanned_value,
3975
0
                                         "No significand digits in float");
3976
0
        }
3977
3978
0
        auto beg_exp_it = it;
3979
0
        if (allowed_exp) {
3980
0
            it = read_exponent(ranges::subrange{it, range.end()}, "eE");
3981
0
        }
3982
0
        if (required_exp && beg_exp_it == it) {
3983
0
            return unexpected_scan_error(
3984
0
                scan_error::invalid_scanned_value,
3985
0
                "No exponent given to scientific float");
3986
0
        }
3987
3988
0
        m_kind =
3989
0
            (beg_exp_it == it) ? float_kind::fixed : float_kind::scientific;
3990
3991
0
        return it;
3992
0
    }
3993
3994
    template <typename Range, typename ReadRegular, typename ReadHex>
3995
    auto do_read_source_impl(Range range,
3996
                             ReadRegular&& read_regular,
3997
                             ReadHex&& read_hex)
3998
        -> scan_expected<ranges::const_iterator_t<Range>>
3999
14.7k
    {
4000
14.7k
        const bool allowed_hex = (m_options & allow_hex) != 0;
4001
14.7k
        const bool allowed_nonhex =
4002
14.7k
            (m_options & ~static_cast<unsigned>(allow_thsep) &
4003
14.7k
             ~static_cast<unsigned>(allow_hex)) != 0;
4004
4005
14.7k
        if (auto r = read_inf(range); !r && m_kind != float_kind::tbd) {
4006
0
            return r.transform_error(map_parse_error_to_scan_error(
4007
0
                scan_error::invalid_scanned_value,
4008
0
                "Invalid infinite floating-point value"));
4009
0
        }
4010
14.7k
        else if (r) {
4011
0
            return *r;
4012
0
        }
4013
4014
14.7k
        if (auto r = read_nan(range); !r && m_kind != float_kind::tbd) {
4015
0
            return unexpected(r.error());
4016
0
        }
4017
14.7k
        else if (r) {
4018
0
            return *r;
4019
0
        }
4020
4021
14.7k
        if (allowed_hex && !allowed_nonhex) {
4022
            // only hex allowed:
4023
            // prefix "0x" allowed, not required
4024
30
            auto it = range.begin();
4025
4026
30
            if (auto r = read_hex_prefix(range)) {
4027
0
                m_kind = float_kind::hex_with_prefix;
4028
0
                it = *r;
4029
0
            }
4030
30
            else {
4031
30
                m_kind = float_kind::hex_without_prefix;
4032
30
            }
4033
4034
30
            return read_hex(ranges::subrange{it, range.end()});
4035
30
        }
4036
14.7k
        if (!allowed_hex && allowed_nonhex) {
4037
            // only nonhex allowed:
4038
            // no prefix allowed
4039
58
            m_kind = float_kind::generic;
4040
58
            return read_regular_float(range);
4041
58
        }
4042
        // both hex and nonhex allowed:
4043
        // check for "0x" prefix -> hex,
4044
        // regular otherwise
4045
4046
14.6k
        if (auto r = read_hex_prefix(range); SCN_UNLIKELY(r)) {
4047
0
            m_kind = float_kind::hex_with_prefix;
4048
0
            return read_hex(ranges::subrange{*r, range.end()});
4049
0
        }
4050
4051
14.6k
        m_kind = float_kind::generic;
4052
14.6k
        return read_regular(range);
4053
14.6k
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEZNS3_16read_source_implISJ_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlRKSR_E_ZNSN_ISJ_EESW_SR_EUlSY_E0_EESW_SR_OT0_OT1_
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_16read_source_implISE_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlRKSJ_E_ZNSF_ISE_EESO_SJ_EUlSQ_E0_EESO_SJ_OT0_OT1_
_ZN3scn2v34impl12float_readerIcE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKcSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEZNS3_16read_source_implISG_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_EUlRKSO_E_ZNSK_ISG_EEST_SO_EUlSV_E0_EEST_SO_OT0_OT1_
Line
Count
Source
3999
268
    {
4000
268
        const bool allowed_hex = (m_options & allow_hex) != 0;
4001
268
        const bool allowed_nonhex =
4002
268
            (m_options & ~static_cast<unsigned>(allow_thsep) &
4003
268
             ~static_cast<unsigned>(allow_hex)) != 0;
4004
4005
268
        if (auto r = read_inf(range); !r && m_kind != float_kind::tbd) {
4006
0
            return r.transform_error(map_parse_error_to_scan_error(
4007
0
                scan_error::invalid_scanned_value,
4008
0
                "Invalid infinite floating-point value"));
4009
0
        }
4010
268
        else if (r) {
4011
0
            return *r;
4012
0
        }
4013
4014
268
        if (auto r = read_nan(range); !r && m_kind != float_kind::tbd) {
4015
0
            return unexpected(r.error());
4016
0
        }
4017
268
        else if (r) {
4018
0
            return *r;
4019
0
        }
4020
4021
268
        if (allowed_hex && !allowed_nonhex) {
4022
            // only hex allowed:
4023
            // prefix "0x" allowed, not required
4024
4
            auto it = range.begin();
4025
4026
4
            if (auto r = read_hex_prefix(range)) {
4027
0
                m_kind = float_kind::hex_with_prefix;
4028
0
                it = *r;
4029
0
            }
4030
4
            else {
4031
4
                m_kind = float_kind::hex_without_prefix;
4032
4
            }
4033
4034
4
            return read_hex(ranges::subrange{it, range.end()});
4035
4
        }
4036
264
        if (!allowed_hex && allowed_nonhex) {
4037
            // only nonhex allowed:
4038
            // no prefix allowed
4039
18
            m_kind = float_kind::generic;
4040
18
            return read_regular_float(range);
4041
18
        }
4042
        // both hex and nonhex allowed:
4043
        // check for "0x" prefix -> hex,
4044
        // regular otherwise
4045
4046
246
        if (auto r = read_hex_prefix(range); SCN_UNLIKELY(r)) {
4047
0
            m_kind = float_kind::hex_with_prefix;
4048
0
            return read_hex(ranges::subrange{*r, range.end()});
4049
0
        }
4050
4051
246
        m_kind = float_kind::generic;
4052
246
        return read_regular(range);
4053
246
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIcE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_16read_source_implISB_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_EUlRKSG_E_ZNSC_ISB_EESL_SG_EUlSN_E0_EESL_SG_OT0_OT1_
_ZN3scn2v34impl12float_readerIcE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EERZNS3_16read_source_implISB_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_EUlRKSG_E1_SP_EESL_SG_OT0_OT1_
Line
Count
Source
3999
922
    {
4000
922
        const bool allowed_hex = (m_options & allow_hex) != 0;
4001
922
        const bool allowed_nonhex =
4002
922
            (m_options & ~static_cast<unsigned>(allow_thsep) &
4003
922
             ~static_cast<unsigned>(allow_hex)) != 0;
4004
4005
922
        if (auto r = read_inf(range); !r && m_kind != float_kind::tbd) {
4006
0
            return r.transform_error(map_parse_error_to_scan_error(
4007
0
                scan_error::invalid_scanned_value,
4008
0
                "Invalid infinite floating-point value"));
4009
0
        }
4010
922
        else if (r) {
4011
0
            return *r;
4012
0
        }
4013
4014
922
        if (auto r = read_nan(range); !r && m_kind != float_kind::tbd) {
4015
0
            return unexpected(r.error());
4016
0
        }
4017
922
        else if (r) {
4018
0
            return *r;
4019
0
        }
4020
4021
922
        if (allowed_hex && !allowed_nonhex) {
4022
            // only hex allowed:
4023
            // prefix "0x" allowed, not required
4024
8
            auto it = range.begin();
4025
4026
8
            if (auto r = read_hex_prefix(range)) {
4027
0
                m_kind = float_kind::hex_with_prefix;
4028
0
                it = *r;
4029
0
            }
4030
8
            else {
4031
8
                m_kind = float_kind::hex_without_prefix;
4032
8
            }
4033
4034
8
            return read_hex(ranges::subrange{it, range.end()});
4035
8
        }
4036
914
        if (!allowed_hex && allowed_nonhex) {
4037
            // only nonhex allowed:
4038
            // no prefix allowed
4039
26
            m_kind = float_kind::generic;
4040
26
            return read_regular_float(range);
4041
26
        }
4042
        // both hex and nonhex allowed:
4043
        // check for "0x" prefix -> hex,
4044
        // regular otherwise
4045
4046
888
        if (auto r = read_hex_prefix(range); SCN_UNLIKELY(r)) {
4047
0
            m_kind = float_kind::hex_with_prefix;
4048
0
            return read_hex(ranges::subrange{*r, range.end()});
4049
0
        }
4050
4051
888
        m_kind = float_kind::generic;
4052
888
        return read_regular(range);
4053
888
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENS1_15take_width_viewINS8_ISE_SF_EEE8sentinelILb1EEEEEZNS3_16read_source_implISJ_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESR_EUlRKSR_E_ZNSN_ISJ_EESW_SR_EUlSY_E0_EESW_SR_OT0_OT1_
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_16read_source_implISE_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_EUlRKSJ_E_ZNSF_ISE_EESO_SJ_EUlSQ_E0_EESO_SJ_OT0_OT1_
_ZN3scn2v34impl12float_readerIwE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeINS1_27counted_width_iterator_impl22counted_width_iteratorIPKwSC_EENS1_15take_width_viewINS8_ISC_SC_EEE8sentinelILb1EEEEEZNS3_16read_source_implISG_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESO_EUlRKSO_E_ZNSK_ISG_EEST_SO_EUlSV_E0_EEST_SO_OT0_OT1_
Line
Count
Source
3999
142
    {
4000
142
        const bool allowed_hex = (m_options & allow_hex) != 0;
4001
142
        const bool allowed_nonhex =
4002
142
            (m_options & ~static_cast<unsigned>(allow_thsep) &
4003
142
             ~static_cast<unsigned>(allow_hex)) != 0;
4004
4005
142
        if (auto r = read_inf(range); !r && m_kind != float_kind::tbd) {
4006
0
            return r.transform_error(map_parse_error_to_scan_error(
4007
0
                scan_error::invalid_scanned_value,
4008
0
                "Invalid infinite floating-point value"));
4009
0
        }
4010
142
        else if (r) {
4011
0
            return *r;
4012
0
        }
4013
4014
142
        if (auto r = read_nan(range); !r && m_kind != float_kind::tbd) {
4015
0
            return unexpected(r.error());
4016
0
        }
4017
142
        else if (r) {
4018
0
            return *r;
4019
0
        }
4020
4021
142
        if (allowed_hex && !allowed_nonhex) {
4022
            // only hex allowed:
4023
            // prefix "0x" allowed, not required
4024
6
            auto it = range.begin();
4025
4026
6
            if (auto r = read_hex_prefix(range)) {
4027
0
                m_kind = float_kind::hex_with_prefix;
4028
0
                it = *r;
4029
0
            }
4030
6
            else {
4031
6
                m_kind = float_kind::hex_without_prefix;
4032
6
            }
4033
4034
6
            return read_hex(ranges::subrange{it, range.end()});
4035
6
        }
4036
136
        if (!allowed_hex && allowed_nonhex) {
4037
            // only nonhex allowed:
4038
            // no prefix allowed
4039
8
            m_kind = float_kind::generic;
4040
8
            return read_regular_float(range);
4041
8
        }
4042
        // both hex and nonhex allowed:
4043
        // check for "0x" prefix -> hex,
4044
        // regular otherwise
4045
4046
128
        if (auto r = read_hex_prefix(range); SCN_UNLIKELY(r)) {
4047
0
            m_kind = float_kind::hex_with_prefix;
4048
0
            return read_hex(ranges::subrange{*r, range.end()});
4049
0
        }
4050
4051
128
        m_kind = float_kind::generic;
4052
128
        return read_regular(range);
4053
128
    }
Unexecuted instantiation: _ZN3scn2v34impl12float_readerIwE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_16read_source_implISB_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_EUlRKSG_E_ZNSC_ISB_EESL_SG_EUlSN_E0_EESL_SG_OT0_OT1_
_ZN3scn2v34impl12float_readerIwE19do_read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EERZNS3_16read_source_implISB_EENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_EUlRKSG_E1_SP_EESL_SG_OT0_OT1_
Line
Count
Source
3999
13.4k
    {
4000
13.4k
        const bool allowed_hex = (m_options & allow_hex) != 0;
4001
13.4k
        const bool allowed_nonhex =
4002
13.4k
            (m_options & ~static_cast<unsigned>(allow_thsep) &
4003
13.4k
             ~static_cast<unsigned>(allow_hex)) != 0;
4004
4005
13.4k
        if (auto r = read_inf(range); !r && m_kind != float_kind::tbd) {
4006
0
            return r.transform_error(map_parse_error_to_scan_error(
4007
0
                scan_error::invalid_scanned_value,
4008
0
                "Invalid infinite floating-point value"));
4009
0
        }
4010
13.4k
        else if (r) {
4011
0
            return *r;
4012
0
        }
4013
4014
13.4k
        if (auto r = read_nan(range); !r && m_kind != float_kind::tbd) {
4015
0
            return unexpected(r.error());
4016
0
        }
4017
13.4k
        else if (r) {
4018
0
            return *r;
4019
0
        }
4020
4021
13.4k
        if (allowed_hex && !allowed_nonhex) {
4022
            // only hex allowed:
4023
            // prefix "0x" allowed, not required
4024
12
            auto it = range.begin();
4025
4026
12
            if (auto r = read_hex_prefix(range)) {
4027
0
                m_kind = float_kind::hex_with_prefix;
4028
0
                it = *r;
4029
0
            }
4030
12
            else {
4031
12
                m_kind = float_kind::hex_without_prefix;
4032
12
            }
4033
4034
12
            return read_hex(ranges::subrange{it, range.end()});
4035
12
        }
4036
13.4k
        if (!allowed_hex && allowed_nonhex) {
4037
            // only nonhex allowed:
4038
            // no prefix allowed
4039
6
            m_kind = float_kind::generic;
4040
6
            return read_regular_float(range);
4041
6
        }
4042
        // both hex and nonhex allowed:
4043
        // check for "0x" prefix -> hex,
4044
        // regular otherwise
4045
4046
13.4k
        if (auto r = read_hex_prefix(range); SCN_UNLIKELY(r)) {
4047
0
            m_kind = float_kind::hex_with_prefix;
4048
0
            return read_hex(ranges::subrange{*r, range.end()});
4049
0
        }
4050
4051
13.4k
        m_kind = float_kind::generic;
4052
13.4k
        return read_regular(range);
4053
13.4k
    }
4054
4055
    void handle_separators()
4056
14.3k
    {
4057
14.3k
        if (m_locale_options.thousands_sep == 0 &&
4058
14.3k
            m_locale_options.decimal_point == CharT{'.'}) {
4059
14.3k
            return;
4060
14.3k
        }
4061
4062
0
        auto& str = this->m_buffer.make_into_allocated_string();
4063
0
        if (m_locale_options.decimal_point != CharT{'.'}) {
4064
0
            for (auto& ch : str) {
4065
0
                if (ch == m_locale_options.decimal_point) {
4066
0
                    ch = CharT{'.'};
4067
0
                }
4068
0
            }
4069
0
        }
4070
4071
0
        if (m_locale_options.thousands_sep == 0) {
4072
0
            return;
4073
0
        }
4074
4075
0
        auto first =
4076
0
            std::find(str.begin(), str.end(), m_locale_options.thousands_sep);
4077
0
        if (first == str.end()) {
4078
0
            return;
4079
0
        }
4080
4081
0
        m_thsep_indices.push_back(
4082
0
            static_cast<char>(ranges::distance(str.begin(), first)));
4083
4084
0
        for (auto it = first; ++it != str.end();) {
4085
0
            if (*it != m_locale_options.thousands_sep) {
4086
0
                *first++ = std::move(*it);
4087
0
            }
4088
0
            else {
4089
0
                m_thsep_indices.push_back(
4090
0
                    static_cast<char>(ranges::distance(str.begin(), it)));
4091
0
            }
4092
0
        }
4093
4094
0
        str.erase(first, str.end());
4095
0
    }
scn::v3::impl::float_reader<char>::handle_separators()
Line
Count
Source
4056
896
    {
4057
896
        if (m_locale_options.thousands_sep == 0 &&
4058
896
            m_locale_options.decimal_point == CharT{'.'}) {
4059
896
            return;
4060
896
        }
4061
4062
0
        auto& str = this->m_buffer.make_into_allocated_string();
4063
0
        if (m_locale_options.decimal_point != CharT{'.'}) {
4064
0
            for (auto& ch : str) {
4065
0
                if (ch == m_locale_options.decimal_point) {
4066
0
                    ch = CharT{'.'};
4067
0
                }
4068
0
            }
4069
0
        }
4070
4071
0
        if (m_locale_options.thousands_sep == 0) {
4072
0
            return;
4073
0
        }
4074
4075
0
        auto first =
4076
0
            std::find(str.begin(), str.end(), m_locale_options.thousands_sep);
4077
0
        if (first == str.end()) {
4078
0
            return;
4079
0
        }
4080
4081
0
        m_thsep_indices.push_back(
4082
0
            static_cast<char>(ranges::distance(str.begin(), first)));
4083
4084
0
        for (auto it = first; ++it != str.end();) {
4085
0
            if (*it != m_locale_options.thousands_sep) {
4086
0
                *first++ = std::move(*it);
4087
0
            }
4088
0
            else {
4089
0
                m_thsep_indices.push_back(
4090
0
                    static_cast<char>(ranges::distance(str.begin(), it)));
4091
0
            }
4092
0
        }
4093
4094
0
        str.erase(first, str.end());
4095
0
    }
scn::v3::impl::float_reader<wchar_t>::handle_separators()
Line
Count
Source
4056
13.4k
    {
4057
13.4k
        if (m_locale_options.thousands_sep == 0 &&
4058
13.4k
            m_locale_options.decimal_point == CharT{'.'}) {
4059
13.4k
            return;
4060
13.4k
        }
4061
4062
0
        auto& str = this->m_buffer.make_into_allocated_string();
4063
0
        if (m_locale_options.decimal_point != CharT{'.'}) {
4064
0
            for (auto& ch : str) {
4065
0
                if (ch == m_locale_options.decimal_point) {
4066
0
                    ch = CharT{'.'};
4067
0
                }
4068
0
            }
4069
0
        }
4070
4071
0
        if (m_locale_options.thousands_sep == 0) {
4072
0
            return;
4073
0
        }
4074
4075
0
        auto first =
4076
0
            std::find(str.begin(), str.end(), m_locale_options.thousands_sep);
4077
0
        if (first == str.end()) {
4078
0
            return;
4079
0
        }
4080
4081
0
        m_thsep_indices.push_back(
4082
0
            static_cast<char>(ranges::distance(str.begin(), first)));
4083
4084
0
        for (auto it = first; ++it != str.end();) {
4085
0
            if (*it != m_locale_options.thousands_sep) {
4086
0
                *first++ = std::move(*it);
4087
0
            }
4088
0
            else {
4089
0
                m_thsep_indices.push_back(
4090
0
                    static_cast<char>(ranges::distance(str.begin(), it)));
4091
0
            }
4092
0
        }
4093
4094
0
        str.erase(first, str.end());
4095
0
    }
4096
4097
    template <typename T>
4098
    T setsign(T value) const
4099
14.3k
    {
4100
14.3k
        if (m_sign == sign_type::minus_sign) {
4101
0
            return std::copysign(value, T{-1.0});
4102
0
        }
4103
14.3k
        return std::copysign(value, T{1.0});
4104
14.3k
    }
Unexecuted instantiation: float scn::v3::impl::float_reader<char>::setsign<float>(float) const
Unexecuted instantiation: float scn::v3::impl::float_reader<wchar_t>::setsign<float>(float) const
double scn::v3::impl::float_reader<char>::setsign<double>(double) const
Line
Count
Source
4099
896
    {
4100
896
        if (m_sign == sign_type::minus_sign) {
4101
0
            return std::copysign(value, T{-1.0});
4102
0
        }
4103
896
        return std::copysign(value, T{1.0});
4104
896
    }
double scn::v3::impl::float_reader<wchar_t>::setsign<double>(double) const
Line
Count
Source
4099
13.4k
    {
4100
13.4k
        if (m_sign == sign_type::minus_sign) {
4101
0
            return std::copysign(value, T{-1.0});
4102
0
        }
4103
13.4k
        return std::copysign(value, T{1.0});
4104
13.4k
    }
Unexecuted instantiation: long double scn::v3::impl::float_reader<char>::setsign<long double>(long double) const
Unexecuted instantiation: long double scn::v3::impl::float_reader<wchar_t>::setsign<long double>(long double) const
4105
4106
    template <typename T>
4107
    scan_expected<std::ptrdiff_t> parse_value_impl(T& value);
4108
4109
    localized_number_formatting_options<CharT> m_locale_options{};
4110
    std::string m_thsep_indices{};
4111
    contiguous_range_factory<CharT> m_nan_payload_buffer{};
4112
    std::ptrdiff_t m_integral_part_length{-1};
4113
    sign_type m_sign{sign_type::default_sign};
4114
    float_kind m_kind{float_kind::tbd};
4115
};
4116
4117
#define SCN_DECLARE_FLOAT_READER_TEMPLATE(CharT, FloatT)                \
4118
    extern template auto float_reader<CharT>::parse_value_impl(FloatT&) \
4119
        -> scan_expected<std::ptrdiff_t>;
4120
4121
#if !SCN_DISABLE_TYPE_FLOAT
4122
SCN_DECLARE_FLOAT_READER_TEMPLATE(char, float)
4123
SCN_DECLARE_FLOAT_READER_TEMPLATE(wchar_t, float)
4124
#endif
4125
#if !SCN_DISABLE_TYPE_DOUBLE
4126
SCN_DECLARE_FLOAT_READER_TEMPLATE(char, double)
4127
SCN_DECLARE_FLOAT_READER_TEMPLATE(wchar_t, double)
4128
#endif
4129
#if !SCN_DISABLE_TYPE_LONG_DOUBLE
4130
SCN_DECLARE_FLOAT_READER_TEMPLATE(char, long double)
4131
SCN_DECLARE_FLOAT_READER_TEMPLATE(wchar_t, long double)
4132
#endif
4133
4134
#undef SCN_DECLARE_FLOAT_READER_TEMPLATE
4135
4136
template <typename CharT>
4137
class reader_impl_for_float
4138
    : public reader_base<reader_impl_for_float<CharT>, CharT> {
4139
public:
4140
    constexpr reader_impl_for_float() = default;
4141
4142
    void check_specs_impl(const detail::format_specs& specs,
4143
                          reader_error_handler& eh)
4144
10.4k
    {
4145
10.4k
        detail::check_float_type_specs(specs, eh);
4146
10.4k
    }
scn::v3::impl::reader_impl_for_float<char>::check_specs_impl(scn::v3::detail::format_specs const&, scn::v3::impl::reader_error_handler&)
Line
Count
Source
4144
7.17k
    {
4145
7.17k
        detail::check_float_type_specs(specs, eh);
4146
7.17k
    }
scn::v3::impl::reader_impl_for_float<wchar_t>::check_specs_impl(scn::v3::detail::format_specs const&, scn::v3::impl::reader_error_handler&)
Line
Count
Source
4144
3.29k
    {
4145
3.29k
        detail::check_float_type_specs(specs, eh);
4146
3.29k
    }
4147
4148
    template <typename Range, typename T>
4149
    auto read_default(Range range, T& value, detail::locale_ref loc)
4150
        -> scan_expected<ranges::const_iterator_t<Range>>
4151
13.7k
    {
4152
13.7k
        SCN_UNUSED(loc);
4153
4154
13.7k
        float_reader<CharT> rd{};
4155
13.7k
        return read_impl<Range>(
4156
13.7k
            range, rd,
4157
13.7k
            [](float_reader<CharT>& r, auto&&... args) {
4158
13.7k
                return r.read_source(SCN_FWD(args)...);
4159
13.7k
            },
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSB_SO_EEEDaSR_SU_
_ZZN3scn2v34impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSB_SO_EEEDaSR_SU_
Line
Count
Source
4157
634
            [](float_reader<CharT>& r, auto&&... args) {
4158
634
                return r.read_source(SCN_FWD(args)...);
4159
634
            },
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSB_SO_EEEDaSR_SU_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSE_SQ_EEEDaST_SW_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSE_SQ_EEEDaST_SW_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSE_SQ_EEEDaST_SW_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSB_SO_EEEDaSR_SU_
_ZZN3scn2v34impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSB_SO_EEEDaSR_SU_
Line
Count
Source
4157
13.0k
            [](float_reader<CharT>& r, auto&&... args) {
4158
13.0k
                return r.read_source(SCN_FWD(args)...);
4159
13.0k
            },
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSB_SO_EEEDaSR_SU_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSE_SQ_EEEDaST_SW_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSE_SQ_EEEDaST_SW_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSE_SQ_EEEDaST_SW_
4160
13.7k
            value);
4161
13.7k
    }
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
_ZN3scn2v34impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Line
Count
Source
4151
634
    {
4152
634
        SCN_UNUSED(loc);
4153
4154
634
        float_reader<CharT> rd{};
4155
634
        return read_impl<Range>(
4156
634
            range, rd,
4157
634
            [](float_reader<CharT>& r, auto&&... args) {
4158
634
                return r.read_source(SCN_FWD(args)...);
4159
634
            },
4160
634
            value);
4161
634
    }
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
_ZN3scn2v34impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Line
Count
Source
4151
13.0k
    {
4152
13.0k
        SCN_UNUSED(loc);
4153
4154
13.0k
        float_reader<CharT> rd{};
4155
13.0k
        return read_impl<Range>(
4156
13.0k
            range, rd,
4157
13.0k
            [](float_reader<CharT>& r, auto&&... args) {
4158
13.0k
                return r.read_source(SCN_FWD(args)...);
4159
13.0k
            },
4160
13.0k
            value);
4161
13.0k
    }
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RT0_NS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RT0_NS9_10locale_refE
4162
4163
    template <typename Range, typename T>
4164
    auto read_specs(Range range,
4165
                    const detail::format_specs& specs,
4166
                    T& value,
4167
                    detail::locale_ref loc)
4168
        -> scan_expected<ranges::const_iterator_t<Range>>
4169
1.04k
    {
4170
1.04k
        float_reader<CharT> rd{get_options(specs)};
4171
4172
1.04k
#if !SCN_DISABLE_LOCALE
4173
1.04k
        if (specs.localized) {
4174
34
            return read_impl<Range>(
4175
34
                range, rd,
4176
34
                [](float_reader<CharT>& r, auto&&... args) {
4177
34
                    return r.read_source_localized(SCN_FWD(args)...);
4178
34
                },
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSB_SR_EEEDaSU_SX_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSE_ST_EEEDaSW_SZ_
_ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSD_ST_EEEDaSW_SZ_
Line
Count
Source
4176
8
                [](float_reader<CharT>& r, auto&&... args) {
4177
8
                    return r.read_source_localized(SCN_FWD(args)...);
4178
8
                },
_ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSB_SR_EEEDaSU_SX_
Line
Count
Source
4176
10
                [](float_reader<CharT>& r, auto&&... args) {
4177
10
                    return r.read_source_localized(SCN_FWD(args)...);
4178
10
                },
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E_clIJSB_SR_EEEDaSU_SX_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSB_SR_EEEDaSU_SX_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSE_ST_EEEDaSW_SZ_
_ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSD_ST_EEEDaSW_SZ_
Line
Count
Source
4176
8
                [](float_reader<CharT>& r, auto&&... args) {
4177
8
                    return r.read_source_localized(SCN_FWD(args)...);
4178
8
                },
_ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSB_SR_EEEDaSU_SX_
Line
Count
Source
4176
8
                [](float_reader<CharT>& r, auto&&... args) {
4177
8
                    return r.read_source_localized(SCN_FWD(args)...);
4178
8
                },
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E_clIJSB_SR_EEEDaSU_SX_
4179
34
                value, loc);
4180
34
        }
4181
1.01k
#endif
4182
4183
1.01k
        return read_impl<Range>(
4184
1.01k
            range, rd,
4185
1.01k
            [](float_reader<CharT>& r, auto&&... args) {
4186
1.01k
                return r.read_source(SCN_FWD(args)...);
4187
1.01k
            },
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSB_SR_EEEDaSU_SX_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSE_ST_EEEDaSW_SZ_
_ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSD_ST_EEEDaSW_SZ_
Line
Count
Source
4185
260
            [](float_reader<CharT>& r, auto&&... args) {
4186
260
                return r.read_source(SCN_FWD(args)...);
4187
260
            },
_ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSB_SR_EEEDaSU_SX_
Line
Count
Source
4185
278
            [](float_reader<CharT>& r, auto&&... args) {
4186
278
                return r.read_source(SCN_FWD(args)...);
4187
278
            },
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIcEEDpOT_E0_clIJSB_SR_EEEDaSU_SX_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSB_SR_EEEDaSU_SX_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSE_ST_EEEDaSW_SZ_
_ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSD_ST_EEEDaSW_SZ_
Line
Count
Source
4185
134
            [](float_reader<CharT>& r, auto&&... args) {
4186
134
                return r.read_source(SCN_FWD(args)...);
4187
134
            },
_ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSB_SR_EEEDaSU_SX_
Line
Count
Source
4185
338
            [](float_reader<CharT>& r, auto&&... args) {
4186
338
                return r.read_source(SCN_FWD(args)...);
4187
338
            },
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSG_SV_EEEDaSY_S11_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSE_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSD_ST_EEEDaSW_SZ_
Unexecuted instantiation: _ZZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refEENKUlRNS1_12float_readerIwEEDpOT_E0_clIJSB_SR_EEEDaSU_SX_
4188
1.01k
            value);
4189
1.04k
    }
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
4169
268
    {
4170
268
        float_reader<CharT> rd{get_options(specs)};
4171
4172
268
#if !SCN_DISABLE_LOCALE
4173
268
        if (specs.localized) {
4174
8
            return read_impl<Range>(
4175
8
                range, rd,
4176
8
                [](float_reader<CharT>& r, auto&&... args) {
4177
8
                    return r.read_source_localized(SCN_FWD(args)...);
4178
8
                },
4179
8
                value, loc);
4180
8
        }
4181
260
#endif
4182
4183
260
        return read_impl<Range>(
4184
260
            range, rd,
4185
260
            [](float_reader<CharT>& r, auto&&... args) {
4186
260
                return r.read_source(SCN_FWD(args)...);
4187
260
            },
4188
260
            value);
4189
268
    }
_ZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
4169
288
    {
4170
288
        float_reader<CharT> rd{get_options(specs)};
4171
4172
288
#if !SCN_DISABLE_LOCALE
4173
288
        if (specs.localized) {
4174
10
            return read_impl<Range>(
4175
10
                range, rd,
4176
10
                [](float_reader<CharT>& r, auto&&... args) {
4177
10
                    return r.read_source_localized(SCN_FWD(args)...);
4178
10
                },
4179
10
                value, loc);
4180
10
        }
4181
278
#endif
4182
4183
278
        return read_impl<Range>(
4184
278
            range, rd,
4185
278
            [](float_reader<CharT>& r, auto&&... args) {
4186
278
                return r.read_source(SCN_FWD(args)...);
4187
278
            },
4188
278
            value);
4189
288
    }
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Line
Count
Source
4169
142
    {
4170
142
        float_reader<CharT> rd{get_options(specs)};
4171
4172
142
#if !SCN_DISABLE_LOCALE
4173
142
        if (specs.localized) {
4174
8
            return read_impl<Range>(
4175
8
                range, rd,
4176
8
                [](float_reader<CharT>& r, auto&&... args) {
4177
8
                    return r.read_source_localized(SCN_FWD(args)...);
4178
8
                },
4179
8
                value, loc);
4180
8
        }
4181
134
#endif
4182
4183
134
        return read_impl<Range>(
4184
134
            range, rd,
4185
134
            [](float_reader<CharT>& r, auto&&... args) {
4186
134
                return r.read_source(SCN_FWD(args)...);
4187
134
            },
4188
134
            value);
4189
142
    }
_ZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
Line
Count
Source
4169
346
    {
4170
346
        float_reader<CharT> rd{get_options(specs)};
4171
4172
346
#if !SCN_DISABLE_LOCALE
4173
346
        if (specs.localized) {
4174
8
            return read_impl<Range>(
4175
8
                range, rd,
4176
8
                [](float_reader<CharT>& r, auto&&... args) {
4177
8
                    return r.read_source_localized(SCN_FWD(args)...);
4178
8
                },
4179
8
                value, loc);
4180
8
        }
4181
338
#endif
4182
4183
338
        return read_impl<Range>(
4184
338
            range, rd,
4185
338
            [](float_reader<CharT>& r, auto&&... args) {
4186
338
                return r.read_source(SCN_FWD(args)...);
4187
338
            },
4188
338
            value);
4189
346
    }
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERT0_NSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERT0_NSL_10locale_refE
4190
4191
private:
4192
    template <typename Range>
4193
    using read_source_callback_type =
4194
        scan_expected<ranges::const_iterator_t<Range>>(float_reader<CharT>&,
4195
                                                       Range,
4196
                                                       detail::locale_ref);
4197
4198
    template <typename Range, typename T>
4199
    scan_expected<ranges::const_iterator_t<Range>> read_impl(
4200
        Range range,
4201
        float_reader<CharT>& rd,
4202
        function_ref<read_source_callback_type<Range>> read_source_cb,
4203
        T& value,
4204
        detail::locale_ref loc = {})
4205
14.7k
    {
4206
14.7k
        if (auto r = std::invoke(read_source_cb, rd, range, loc);
4207
14.7k
            SCN_UNLIKELY(!r)) {
4208
442
            return unexpected(r.error());
4209
442
        }
4210
4211
14.3k
        SCN_TRY(n, rd.parse_value(value));
4212
0
        return ranges::next(range.begin(), n);
4213
14.3k
    }
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNS1_12float_readerIcEENS1_12function_refIFSP_SS_SK_NSA_10locale_refEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEERT0_SU_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS1_12float_readerIcEENS1_12function_refIFSN_SQ_SI_NS9_10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNS1_12float_readerIcEENS1_12function_refIFSM_SP_SH_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS1_12float_readerIcEENS1_12function_refIFSK_SN_SF_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigISR_E8functionEEERT0_SQ_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNS1_12float_readerIcEENS1_12function_refIFSP_SS_SK_NSA_10locale_refEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEERT0_SU_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS1_12float_readerIcEENS1_12function_refIFSN_SQ_SI_NS9_10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
_ZN3scn2v34impl21reader_impl_for_floatIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNS1_12float_readerIcEENS1_12function_refIFSM_SP_SH_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Line
Count
Source
4205
268
    {
4206
268
        if (auto r = std::invoke(read_source_cb, rd, range, loc);
4207
268
            SCN_UNLIKELY(!r)) {
4208
268
            return unexpected(r.error());
4209
268
        }
4210
4211
0
        SCN_TRY(n, rd.parse_value(value));
4212
0
        return ranges::next(range.begin(), n);
4213
0
    }
_ZN3scn2v34impl21reader_impl_for_floatIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS1_12float_readerIcEENS1_12function_refIFSK_SN_SF_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigISR_E8functionEEERT0_SQ_
Line
Count
Source
4205
922
    {
4206
922
        if (auto r = std::invoke(read_source_cb, rd, range, loc);
4207
922
            SCN_UNLIKELY(!r)) {
4208
26
            return unexpected(r.error());
4209
26
        }
4210
4211
896
        SCN_TRY(n, rd.parse_value(value));
4212
0
        return ranges::next(range.begin(), n);
4213
896
    }
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNS1_12float_readerIcEENS1_12function_refIFSP_SS_SK_NSA_10locale_refEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEERT0_SU_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS1_12float_readerIcEENS1_12function_refIFSN_SQ_SI_NS9_10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNS1_12float_readerIcEENS1_12function_refIFSM_SP_SH_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS1_12float_readerIcEENS1_12function_refIFSK_SN_SF_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigISR_E8functionEEERT0_SQ_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNS1_12float_readerIwEENS1_12function_refIFSP_SS_SK_NSA_10locale_refEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEERT0_SU_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS1_12float_readerIwEENS1_12function_refIFSN_SQ_SI_NS9_10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEfEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNS1_12float_readerIwEENS1_12function_refIFSM_SP_SH_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEfEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS1_12float_readerIwEENS1_12function_refIFSK_SN_SF_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigISR_E8functionEEERT0_SQ_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNS1_12float_readerIwEENS1_12function_refIFSP_SS_SK_NSA_10locale_refEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEERT0_SU_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS1_12float_readerIwEENS1_12function_refIFSN_SQ_SI_NS9_10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
_ZN3scn2v34impl21reader_impl_for_floatIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEdEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNS1_12float_readerIwEENS1_12function_refIFSM_SP_SH_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Line
Count
Source
4205
142
    {
4206
142
        if (auto r = std::invoke(read_source_cb, rd, range, loc);
4207
142
            SCN_UNLIKELY(!r)) {
4208
142
            return unexpected(r.error());
4209
142
        }
4210
4211
0
        SCN_TRY(n, rd.parse_value(value));
4212
0
        return ranges::next(range.begin(), n);
4213
0
    }
_ZN3scn2v34impl21reader_impl_for_floatIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEdEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS1_12float_readerIwEENS1_12function_refIFSK_SN_SF_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigISR_E8functionEEERT0_SQ_
Line
Count
Source
4205
13.4k
    {
4206
13.4k
        if (auto r = std::invoke(read_source_cb, rd, range, loc);
4207
13.4k
            SCN_UNLIKELY(!r)) {
4208
6
            return unexpected(r.error());
4209
6
        }
4210
4211
13.4k
        SCN_TRY(n, rd.parse_value(value));
4212
0
        return ranges::next(range.begin(), n);
4213
13.4k
    }
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNS1_12float_readerIwEENS1_12function_refIFSP_SS_SK_NSA_10locale_refEENS1_12fnref_detail11qual_fn_sigISV_E8functionEEERT0_SU_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS1_12float_readerIwEENS1_12function_refIFSN_SQ_SI_NS9_10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEeEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNS1_12float_readerIwEENS1_12function_refIFSM_SP_SH_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigIST_E8functionEEERT0_SS_
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_floatIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEeEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS1_12float_readerIwEENS1_12function_refIFSK_SN_SF_NS0_6detail10locale_refEENS1_12fnref_detail11qual_fn_sigISR_E8functionEEERT0_SQ_
4214
4215
    static unsigned get_options(const detail::format_specs& specs)
4216
1.04k
    {
4217
1.04k
        unsigned options{};
4218
1.04k
        if (specs.localized) {
4219
34
            options |= float_reader_base::allow_thsep;
4220
34
        }
4221
4222
1.04k
        SCN_GCC_COMPAT_PUSH
4223
1.04k
        SCN_GCC_COMPAT_IGNORE("-Wswitch-enum")
4224
4225
1.04k
        switch (specs.type) {
4226
38
            case detail::presentation_type::float_fixed:
4227
38
                return options | float_reader_base::allow_fixed;
4228
4229
8
            case detail::presentation_type::float_scientific:
4230
8
                return options | float_reader_base::allow_scientific;
4231
4232
30
            case detail::presentation_type::float_hex:
4233
30
                return options | float_reader_base::allow_hex;
4234
4235
12
            case detail::presentation_type::float_general:
4236
12
                return options | float_reader_base::allow_scientific |
4237
12
                       float_reader_base::allow_fixed;
4238
4239
956
            case detail::presentation_type::none:
4240
956
                return options | float_reader_base::allow_scientific |
4241
956
                       float_reader_base::allow_fixed |
4242
956
                       float_reader_base::allow_hex;
4243
4244
0
            default:
4245
0
                SCN_EXPECT(false);
4246
1.04k
                SCN_UNREACHABLE;
4247
1.04k
        }
4248
4249
        SCN_GCC_COMPAT_POP  // -Wswitch-enum
4250
1.04k
    }
scn::v3::impl::reader_impl_for_float<char>::get_options(scn::v3::detail::format_specs const&)
Line
Count
Source
4216
556
    {
4217
556
        unsigned options{};
4218
556
        if (specs.localized) {
4219
18
            options |= float_reader_base::allow_thsep;
4220
18
        }
4221
4222
556
        SCN_GCC_COMPAT_PUSH
4223
556
        SCN_GCC_COMPAT_IGNORE("-Wswitch-enum")
4224
4225
556
        switch (specs.type) {
4226
30
            case detail::presentation_type::float_fixed:
4227
30
                return options | float_reader_base::allow_fixed;
4228
4229
4
            case detail::presentation_type::float_scientific:
4230
4
                return options | float_reader_base::allow_scientific;
4231
4232
12
            case detail::presentation_type::float_hex:
4233
12
                return options | float_reader_base::allow_hex;
4234
4235
10
            case detail::presentation_type::float_general:
4236
10
                return options | float_reader_base::allow_scientific |
4237
10
                       float_reader_base::allow_fixed;
4238
4239
500
            case detail::presentation_type::none:
4240
500
                return options | float_reader_base::allow_scientific |
4241
500
                       float_reader_base::allow_fixed |
4242
500
                       float_reader_base::allow_hex;
4243
4244
0
            default:
4245
0
                SCN_EXPECT(false);
4246
556
                SCN_UNREACHABLE;
4247
556
        }
4248
4249
        SCN_GCC_COMPAT_POP  // -Wswitch-enum
4250
556
    }
scn::v3::impl::reader_impl_for_float<wchar_t>::get_options(scn::v3::detail::format_specs const&)
Line
Count
Source
4216
488
    {
4217
488
        unsigned options{};
4218
488
        if (specs.localized) {
4219
16
            options |= float_reader_base::allow_thsep;
4220
16
        }
4221
4222
488
        SCN_GCC_COMPAT_PUSH
4223
488
        SCN_GCC_COMPAT_IGNORE("-Wswitch-enum")
4224
4225
488
        switch (specs.type) {
4226
8
            case detail::presentation_type::float_fixed:
4227
8
                return options | float_reader_base::allow_fixed;
4228
4229
4
            case detail::presentation_type::float_scientific:
4230
4
                return options | float_reader_base::allow_scientific;
4231
4232
18
            case detail::presentation_type::float_hex:
4233
18
                return options | float_reader_base::allow_hex;
4234
4235
2
            case detail::presentation_type::float_general:
4236
2
                return options | float_reader_base::allow_scientific |
4237
2
                       float_reader_base::allow_fixed;
4238
4239
456
            case detail::presentation_type::none:
4240
456
                return options | float_reader_base::allow_scientific |
4241
456
                       float_reader_base::allow_fixed |
4242
456
                       float_reader_base::allow_hex;
4243
4244
0
            default:
4245
0
                SCN_EXPECT(false);
4246
488
                SCN_UNREACHABLE;
4247
488
        }
4248
4249
        SCN_GCC_COMPAT_POP  // -Wswitch-enum
4250
488
    }
4251
};
4252
4253
/////////////////////////////////////////////////////////////////
4254
// Regex reader
4255
/////////////////////////////////////////////////////////////////
4256
4257
// Forward declaration for C++17 compatibility with regex disabled
4258
template <typename CharT, typename Input>
4259
auto read_regex_matches_impl(std::basic_string_view<CharT> pattern,
4260
                             detail::regex_flags flags,
4261
                             Input input,
4262
                             basic_regex_matches<CharT>& value)
4263
    -> scan_expected<ranges::iterator_t<Input>>;
4264
4265
#if !SCN_DISABLE_REGEX
4266
4267
#if SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_STD
4268
constexpr auto make_regex_flags(detail::regex_flags flags)
4269
    -> scan_expected<std::regex_constants::syntax_option_type>
4270
21.5k
{
4271
21.5k
    std::regex_constants::syntax_option_type result{};
4272
21.5k
    if ((flags & detail::regex_flags::multiline) != detail::regex_flags::none) {
4273
606
#if SCN_HAS_STD_REGEX_MULTILINE
4274
606
        result |= std::regex_constants::multiline;
4275
#else
4276
        return unexpected_scan_error(
4277
            scan_error::invalid_format_string,
4278
            "/m flag for regex isn't supported by regex backend");
4279
#endif
4280
606
    }
4281
21.5k
    if ((flags & detail::regex_flags::singleline) !=
4282
21.5k
        detail::regex_flags::none) {
4283
0
        return unexpected_scan_error(
4284
0
            scan_error::invalid_format_string,
4285
0
            "/s flag for regex isn't supported by regex backend");
4286
0
    }
4287
21.5k
    if ((flags & detail::regex_flags::nocase) != detail::regex_flags::none) {
4288
2.56k
        result |= std::regex_constants::icase;
4289
2.56k
    }
4290
21.5k
    if ((flags & detail::regex_flags::nocapture) != detail::regex_flags::none) {
4291
12
        result |= std::regex_constants::nosubs;
4292
12
    }
4293
21.5k
    return result;
4294
21.5k
}
4295
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_BOOST
4296
constexpr auto make_regex_flags(detail::regex_flags flags)
4297
    -> boost::regex_constants::syntax_option_type
4298
{
4299
    boost::regex_constants::syntax_option_type result{};
4300
    if ((flags & detail::regex_flags::multiline) == detail::regex_flags::none) {
4301
        result |= boost::regex_constants::no_mod_m;
4302
    }
4303
    if ((flags & detail::regex_flags::singleline) !=
4304
        detail::regex_flags::none) {
4305
        result |= boost::regex_constants::mod_s;
4306
    }
4307
    if ((flags & detail::regex_flags::nocase) != detail::regex_flags::none) {
4308
        result |= boost::regex_constants::icase;
4309
    }
4310
    if ((flags & detail::regex_flags::nocapture) != detail::regex_flags::none) {
4311
        result |= boost::regex_constants::nosubs;
4312
    }
4313
    return result;
4314
}
4315
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_RE2
4316
inline auto make_regex_flags(detail::regex_flags flags)
4317
    -> std::pair<RE2::Options, std::string_view>
4318
{
4319
    RE2::Options opt{RE2::Quiet};
4320
    std::string_view stringflags{};
4321
4322
    if ((flags & detail::regex_flags::multiline) == detail::regex_flags::none) {
4323
        stringflags = "(?m)";
4324
    }
4325
    if ((flags & detail::regex_flags::singleline) !=
4326
        detail::regex_flags::none) {
4327
        opt.set_dot_nl(true);
4328
    }
4329
    if ((flags & detail::regex_flags::nocase) != detail::regex_flags::none) {
4330
        opt.set_case_sensitive(false);
4331
    }
4332
    if ((flags & detail::regex_flags::nocapture) != detail::regex_flags::none) {
4333
        opt.set_never_capture(true);
4334
    }
4335
4336
    return {opt, stringflags};
4337
}
4338
#endif  // SCN_REGEX_BACKEND == ...
4339
4340
template <typename CharT, typename Input>
4341
auto read_regex_string_impl(std::basic_string_view<CharT> pattern,
4342
                            detail::regex_flags flags,
4343
                            Input input)
4344
    -> scan_expected<ranges::iterator_t<Input>>
4345
21.5k
{
4346
21.5k
    static_assert(ranges::contiguous_range<Input> &&
4347
21.5k
                  ranges::borrowed_range<Input> &&
4348
21.5k
                  std::is_same_v<ranges::range_value_t<Input>, CharT>);
4349
4350
21.5k
#if SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_STD
4351
21.5k
    std::basic_regex<CharT> re{};
4352
21.5k
    try {
4353
21.5k
        SCN_TRY(re_flags, make_regex_flags(flags));
4354
21.5k
        re = std::basic_regex<CharT>{pattern.data(), pattern.size(),
4355
21.5k
                                     re_flags | std::regex_constants::nosubs};
4356
21.5k
    }
4357
21.5k
    catch (const std::regex_error& err) {
4358
10.3k
        return unexpected_scan_error(scan_error::invalid_format_string,
4359
10.3k
                                     "Invalid regex");
4360
10.3k
    }
4361
4362
11.1k
    std::match_results<const CharT*> matches{};
4363
11.1k
    try {
4364
11.1k
        bool found = std::regex_search(input.data(),
4365
11.1k
                                       input.data() + input.size(), matches, re,
4366
11.1k
                                       std::regex_constants::match_continuous);
4367
11.1k
        if (!found || matches.prefix().matched) {
4368
7.11k
            return unexpected_scan_error(scan_error::invalid_scanned_value,
4369
7.11k
                                         "Regular expression didn't match");
4370
7.11k
        }
4371
11.1k
    }
4372
11.1k
    catch (const std::regex_error& err) {
4373
360
        return unexpected_scan_error(scan_error::invalid_format_string,
4374
360
                                     "Regex matching failed with an error");
4375
360
    }
4376
4377
3.66k
    return input.begin() + ranges::distance(input.data(), matches[0].second);
4378
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_BOOST
4379
    auto re =
4380
#if SCN_REGEX_BOOST_USE_ICU
4381
        boost::make_u32regex(pattern.data(), pattern.data() + pattern.size(),
4382
                             make_regex_flags(flags) |
4383
                                 boost::regex_constants::no_except |
4384
                                 boost::regex_constants::nosubs);
4385
#else
4386
        boost::basic_regex<CharT>{pattern.data(), pattern.size(),
4387
                                  make_regex_flags(flags) |
4388
                                      boost::regex_constants::no_except |
4389
                                      boost::regex_constants::nosubs};
4390
#endif
4391
    if (re.status() != 0) {
4392
        return unexpected_scan_error(scan_error::invalid_format_string,
4393
                                     "Invalid regex");
4394
    }
4395
4396
    boost::match_results<const CharT*> matches{};
4397
    try {
4398
        bool found =
4399
#if SCN_REGEX_BOOST_USE_ICU
4400
            boost::u32regex_search(input.data(), input.data() + input.size(),
4401
                                   matches, re,
4402
                                   boost::regex_constants::match_continuous);
4403
#else
4404
            boost::regex_search(input.data(), input.data() + input.size(),
4405
                                matches, re,
4406
                                boost::regex_constants::match_continuous);
4407
#endif
4408
        if (!found || matches.prefix().matched) {
4409
            return unexpected_scan_error(scan_error::invalid_scanned_value,
4410
                                         "Regular expression didn't match");
4411
        }
4412
    }
4413
    catch (const std::runtime_error& err) {
4414
        return unexpected_scan_error(scan_error::invalid_format_string,
4415
                                     "Regex matching failed with an error");
4416
    }
4417
4418
    return input.begin() + ranges::distance(input.data(), matches[0].second);
4419
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_RE2
4420
    static_assert(std::is_same_v<CharT, char>);
4421
    std::string flagged_pattern{};
4422
    auto re = [&]() {
4423
        auto [opts, flagstr] = make_regex_flags(flags);
4424
        opts.set_never_capture(true);
4425
        if (flagstr.empty()) {
4426
            return re2::RE2{pattern, opts};
4427
        }
4428
        flagged_pattern.reserve(flagstr.size() + pattern.size());
4429
        flagged_pattern.append(flagstr);
4430
        flagged_pattern.append(pattern);
4431
        return re2::RE2{flagged_pattern, opts};
4432
    }();
4433
    if (!re.ok()) {
4434
        return unexpected_scan_error(scan_error::invalid_format_string,
4435
                                     "Failed to parse regular expression");
4436
    }
4437
4438
    auto new_input = detail::make_string_view_from_pointers(
4439
        detail::to_address(input.begin()), detail::to_address(input.end()));
4440
    bool found = re2::RE2::Consume(&new_input, re);
4441
    if (!found) {
4442
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4443
                                     "Regular expression didn't match");
4444
    }
4445
    return input.begin() + ranges::distance(input.data(), new_input.data());
4446
#endif  // SCN_REGEX_BACKEND == ...
4447
11.1k
}
Unexecuted instantiation: _ZN3scn2v34impl22read_regex_string_implIcNSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEENS4_IT_NS5_ISE_EEEENS0_6detail11regex_flagsESA_
_ZN3scn2v34impl22read_regex_string_implIcNS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT0_EEEEEENSt3__117basic_string_viewIT_NSF_11char_traitsISH_EEEENS0_6detail11regex_flagsESB_
Line
Count
Source
4345
14.2k
{
4346
14.2k
    static_assert(ranges::contiguous_range<Input> &&
4347
14.2k
                  ranges::borrowed_range<Input> &&
4348
14.2k
                  std::is_same_v<ranges::range_value_t<Input>, CharT>);
4349
4350
14.2k
#if SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_STD
4351
14.2k
    std::basic_regex<CharT> re{};
4352
14.2k
    try {
4353
14.2k
        SCN_TRY(re_flags, make_regex_flags(flags));
4354
14.2k
        re = std::basic_regex<CharT>{pattern.data(), pattern.size(),
4355
14.2k
                                     re_flags | std::regex_constants::nosubs};
4356
14.2k
    }
4357
14.2k
    catch (const std::regex_error& err) {
4358
7.72k
        return unexpected_scan_error(scan_error::invalid_format_string,
4359
7.72k
                                     "Invalid regex");
4360
7.72k
    }
4361
4362
6.48k
    std::match_results<const CharT*> matches{};
4363
6.48k
    try {
4364
6.48k
        bool found = std::regex_search(input.data(),
4365
6.48k
                                       input.data() + input.size(), matches, re,
4366
6.48k
                                       std::regex_constants::match_continuous);
4367
6.48k
        if (!found || matches.prefix().matched) {
4368
4.11k
            return unexpected_scan_error(scan_error::invalid_scanned_value,
4369
4.11k
                                         "Regular expression didn't match");
4370
4.11k
        }
4371
6.48k
    }
4372
6.48k
    catch (const std::regex_error& err) {
4373
300
        return unexpected_scan_error(scan_error::invalid_format_string,
4374
300
                                     "Regex matching failed with an error");
4375
300
    }
4376
4377
2.07k
    return input.begin() + ranges::distance(input.data(), matches[0].second);
4378
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_BOOST
4379
    auto re =
4380
#if SCN_REGEX_BOOST_USE_ICU
4381
        boost::make_u32regex(pattern.data(), pattern.data() + pattern.size(),
4382
                             make_regex_flags(flags) |
4383
                                 boost::regex_constants::no_except |
4384
                                 boost::regex_constants::nosubs);
4385
#else
4386
        boost::basic_regex<CharT>{pattern.data(), pattern.size(),
4387
                                  make_regex_flags(flags) |
4388
                                      boost::regex_constants::no_except |
4389
                                      boost::regex_constants::nosubs};
4390
#endif
4391
    if (re.status() != 0) {
4392
        return unexpected_scan_error(scan_error::invalid_format_string,
4393
                                     "Invalid regex");
4394
    }
4395
4396
    boost::match_results<const CharT*> matches{};
4397
    try {
4398
        bool found =
4399
#if SCN_REGEX_BOOST_USE_ICU
4400
            boost::u32regex_search(input.data(), input.data() + input.size(),
4401
                                   matches, re,
4402
                                   boost::regex_constants::match_continuous);
4403
#else
4404
            boost::regex_search(input.data(), input.data() + input.size(),
4405
                                matches, re,
4406
                                boost::regex_constants::match_continuous);
4407
#endif
4408
        if (!found || matches.prefix().matched) {
4409
            return unexpected_scan_error(scan_error::invalid_scanned_value,
4410
                                         "Regular expression didn't match");
4411
        }
4412
    }
4413
    catch (const std::runtime_error& err) {
4414
        return unexpected_scan_error(scan_error::invalid_format_string,
4415
                                     "Regex matching failed with an error");
4416
    }
4417
4418
    return input.begin() + ranges::distance(input.data(), matches[0].second);
4419
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_RE2
4420
    static_assert(std::is_same_v<CharT, char>);
4421
    std::string flagged_pattern{};
4422
    auto re = [&]() {
4423
        auto [opts, flagstr] = make_regex_flags(flags);
4424
        opts.set_never_capture(true);
4425
        if (flagstr.empty()) {
4426
            return re2::RE2{pattern, opts};
4427
        }
4428
        flagged_pattern.reserve(flagstr.size() + pattern.size());
4429
        flagged_pattern.append(flagstr);
4430
        flagged_pattern.append(pattern);
4431
        return re2::RE2{flagged_pattern, opts};
4432
    }();
4433
    if (!re.ok()) {
4434
        return unexpected_scan_error(scan_error::invalid_format_string,
4435
                                     "Failed to parse regular expression");
4436
    }
4437
4438
    auto new_input = detail::make_string_view_from_pointers(
4439
        detail::to_address(input.begin()), detail::to_address(input.end()));
4440
    bool found = re2::RE2::Consume(&new_input, re);
4441
    if (!found) {
4442
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4443
                                     "Regular expression didn't match");
4444
    }
4445
    return input.begin() + ranges::distance(input.data(), new_input.data());
4446
#endif  // SCN_REGEX_BACKEND == ...
4447
6.48k
}
Unexecuted instantiation: _ZN3scn2v34impl22read_regex_string_implIwNSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEENS4_IT_NS5_ISE_EEEENS0_6detail11regex_flagsESA_
_ZN3scn2v34impl22read_regex_string_implIwNS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT0_EEEEEENSt3__117basic_string_viewIT_NSF_11char_traitsISH_EEEENS0_6detail11regex_flagsESB_
Line
Count
Source
4345
7.30k
{
4346
7.30k
    static_assert(ranges::contiguous_range<Input> &&
4347
7.30k
                  ranges::borrowed_range<Input> &&
4348
7.30k
                  std::is_same_v<ranges::range_value_t<Input>, CharT>);
4349
4350
7.30k
#if SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_STD
4351
7.30k
    std::basic_regex<CharT> re{};
4352
7.30k
    try {
4353
7.30k
        SCN_TRY(re_flags, make_regex_flags(flags));
4354
7.30k
        re = std::basic_regex<CharT>{pattern.data(), pattern.size(),
4355
7.30k
                                     re_flags | std::regex_constants::nosubs};
4356
7.30k
    }
4357
7.30k
    catch (const std::regex_error& err) {
4358
2.65k
        return unexpected_scan_error(scan_error::invalid_format_string,
4359
2.65k
                                     "Invalid regex");
4360
2.65k
    }
4361
4362
4.65k
    std::match_results<const CharT*> matches{};
4363
4.65k
    try {
4364
4.65k
        bool found = std::regex_search(input.data(),
4365
4.65k
                                       input.data() + input.size(), matches, re,
4366
4.65k
                                       std::regex_constants::match_continuous);
4367
4.65k
        if (!found || matches.prefix().matched) {
4368
3.00k
            return unexpected_scan_error(scan_error::invalid_scanned_value,
4369
3.00k
                                         "Regular expression didn't match");
4370
3.00k
        }
4371
4.65k
    }
4372
4.65k
    catch (const std::regex_error& err) {
4373
60
        return unexpected_scan_error(scan_error::invalid_format_string,
4374
60
                                     "Regex matching failed with an error");
4375
60
    }
4376
4377
1.59k
    return input.begin() + ranges::distance(input.data(), matches[0].second);
4378
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_BOOST
4379
    auto re =
4380
#if SCN_REGEX_BOOST_USE_ICU
4381
        boost::make_u32regex(pattern.data(), pattern.data() + pattern.size(),
4382
                             make_regex_flags(flags) |
4383
                                 boost::regex_constants::no_except |
4384
                                 boost::regex_constants::nosubs);
4385
#else
4386
        boost::basic_regex<CharT>{pattern.data(), pattern.size(),
4387
                                  make_regex_flags(flags) |
4388
                                      boost::regex_constants::no_except |
4389
                                      boost::regex_constants::nosubs};
4390
#endif
4391
    if (re.status() != 0) {
4392
        return unexpected_scan_error(scan_error::invalid_format_string,
4393
                                     "Invalid regex");
4394
    }
4395
4396
    boost::match_results<const CharT*> matches{};
4397
    try {
4398
        bool found =
4399
#if SCN_REGEX_BOOST_USE_ICU
4400
            boost::u32regex_search(input.data(), input.data() + input.size(),
4401
                                   matches, re,
4402
                                   boost::regex_constants::match_continuous);
4403
#else
4404
            boost::regex_search(input.data(), input.data() + input.size(),
4405
                                matches, re,
4406
                                boost::regex_constants::match_continuous);
4407
#endif
4408
        if (!found || matches.prefix().matched) {
4409
            return unexpected_scan_error(scan_error::invalid_scanned_value,
4410
                                         "Regular expression didn't match");
4411
        }
4412
    }
4413
    catch (const std::runtime_error& err) {
4414
        return unexpected_scan_error(scan_error::invalid_format_string,
4415
                                     "Regex matching failed with an error");
4416
    }
4417
4418
    return input.begin() + ranges::distance(input.data(), matches[0].second);
4419
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_RE2
4420
    static_assert(std::is_same_v<CharT, char>);
4421
    std::string flagged_pattern{};
4422
    auto re = [&]() {
4423
        auto [opts, flagstr] = make_regex_flags(flags);
4424
        opts.set_never_capture(true);
4425
        if (flagstr.empty()) {
4426
            return re2::RE2{pattern, opts};
4427
        }
4428
        flagged_pattern.reserve(flagstr.size() + pattern.size());
4429
        flagged_pattern.append(flagstr);
4430
        flagged_pattern.append(pattern);
4431
        return re2::RE2{flagged_pattern, opts};
4432
    }();
4433
    if (!re.ok()) {
4434
        return unexpected_scan_error(scan_error::invalid_format_string,
4435
                                     "Failed to parse regular expression");
4436
    }
4437
4438
    auto new_input = detail::make_string_view_from_pointers(
4439
        detail::to_address(input.begin()), detail::to_address(input.end()));
4440
    bool found = re2::RE2::Consume(&new_input, re);
4441
    if (!found) {
4442
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4443
                                     "Regular expression didn't match");
4444
    }
4445
    return input.begin() + ranges::distance(input.data(), new_input.data());
4446
#endif  // SCN_REGEX_BACKEND == ...
4447
4.65k
}
4448
4449
template <typename CharT, typename Input>
4450
auto read_regex_matches_impl(std::basic_string_view<CharT> pattern,
4451
                             detail::regex_flags flags,
4452
                             Input input,
4453
                             basic_regex_matches<CharT>& value)
4454
    -> scan_expected<ranges::iterator_t<Input>>
4455
0
{
4456
0
    static_assert(ranges::contiguous_range<Input> &&
4457
0
                  ranges::borrowed_range<Input> &&
4458
0
                  std::is_same_v<ranges::range_value_t<Input>, CharT>);
4459
4460
0
#if SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_STD
4461
0
    std::basic_regex<CharT> re{};
4462
0
    try {
4463
0
        SCN_TRY(re_flags, make_regex_flags(flags));
4464
0
        re = std::basic_regex<CharT>{pattern.data(), pattern.size(), re_flags};
4465
0
    }
4466
0
    catch (const std::regex_error& err) {
4467
0
        return unexpected_scan_error(scan_error::invalid_format_string,
4468
0
                                     "Invalid regex");
4469
0
    }
4470
4471
0
    std::match_results<const CharT*> matches{};
4472
0
    try {
4473
0
        bool found = std::regex_search(input.data(),
4474
0
                                       input.data() + input.size(), matches, re,
4475
0
                                       std::regex_constants::match_continuous);
4476
0
        if (!found || matches.prefix().matched) {
4477
0
            return unexpected_scan_error(scan_error::invalid_scanned_value,
4478
0
                                         "Regular expression didn't match");
4479
0
        }
4480
0
    }
4481
0
    catch (const std::regex_error& err) {
4482
0
        return unexpected_scan_error(scan_error::invalid_format_string,
4483
0
                                     "Regex matching failed with an error");
4484
0
    }
4485
4486
0
    value.resize(matches.size());
4487
0
    std::transform(matches.begin(), matches.end(), value.begin(),
4488
0
                   [](auto&& match) -> std::optional<basic_regex_match<CharT>> {
4489
0
                       if (!match.matched)
4490
0
                           return std::nullopt;
4491
0
                       return detail::make_string_view_from_pointers(
4492
0
                           match.first, match.second);
4493
0
                   });
Unexecuted instantiation: _ZZN3scn2v34impl23read_regex_matches_implIcNSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEENS4_IT_NS5_ISE_EEEENS0_6detail11regex_flagsESA_RNS0_19basic_regex_matchesISE_EEENKUlOSE_E_clIRKNS3_9sub_matchIPKcEEEENS3_8optionalINS0_17basic_regex_matchIcEEEESM_
Unexecuted instantiation: _ZZN3scn2v34impl23read_regex_matches_implIcNS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT0_EEEEEENSt3__117basic_string_viewIT_NSF_11char_traitsISH_EEEENS0_6detail11regex_flagsESB_RNS0_19basic_regex_matchesISH_EEENKUlOSH_E_clIRKNSF_9sub_matchIS8_EEEENSF_8optionalINS0_17basic_regex_matchIcEEEESQ_
Unexecuted instantiation: _ZZN3scn2v34impl23read_regex_matches_implIwNSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEENS4_IT_NS5_ISE_EEEENS0_6detail11regex_flagsESA_RNS0_19basic_regex_matchesISE_EEENKUlOSE_E_clIRKNS3_9sub_matchIPKwEEEENS3_8optionalINS0_17basic_regex_matchIwEEEESM_
Unexecuted instantiation: _ZZN3scn2v34impl23read_regex_matches_implIwNS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT0_EEEEEENSt3__117basic_string_viewIT_NSF_11char_traitsISH_EEEENS0_6detail11regex_flagsESB_RNS0_19basic_regex_matchesISH_EEENKUlOSH_E_clIRKNSF_9sub_matchIS8_EEEENSF_8optionalINS0_17basic_regex_matchIwEEEESQ_
4494
0
    return input.begin() + ranges::distance(input.data(), matches[0].second);
4495
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_BOOST
4496
    std::vector<std::basic_string<CharT>> names;
4497
    for (size_t i = 0; i < pattern.size();) {
4498
        if constexpr (std::is_same_v<CharT, char>) {
4499
            i = pattern.find("(?<", i);
4500
        }
4501
        else {
4502
            i = pattern.find(L"(?<", i);
4503
        }
4504
4505
        if (i == std::basic_string_view<CharT>::npos) {
4506
            break;
4507
        }
4508
        if (i > 0 && pattern[i - 1] == CharT{'\\'}) {
4509
            if (i == 1 || pattern[i - 2] != CharT{'\\'}) {
4510
                i += 3;
4511
                continue;
4512
            }
4513
        }
4514
4515
        i += 3;
4516
        auto end_i = pattern.find(CharT{'>'}, i);
4517
        if (end_i == std::basic_string_view<CharT>::npos) {
4518
            break;
4519
        }
4520
        names.emplace_back(pattern.substr(i, end_i - i));
4521
    }
4522
4523
    auto re =
4524
#if SCN_REGEX_BOOST_USE_ICU
4525
        boost::make_u32regex(
4526
            pattern.data(), pattern.data() + pattern.size(),
4527
            make_regex_flags(flags) | boost::regex_constants::no_except);
4528
#else
4529
        boost::basic_regex<CharT>{
4530
            pattern.data(), pattern.size(),
4531
            make_regex_flags(flags) | boost::regex_constants::no_except};
4532
#endif
4533
    if (re.status() != 0) {
4534
        return unexpected_scan_error(scan_error::invalid_format_string,
4535
                                     "Invalid regex");
4536
    }
4537
4538
    boost::match_results<const CharT*> matches{};
4539
    try {
4540
        bool found =
4541
#if SCN_REGEX_BOOST_USE_ICU
4542
            boost::u32regex_search(input.data(), input.data() + input.size(),
4543
                                   matches, re,
4544
                                   boost::regex_constants::match_continuous);
4545
#else
4546
            boost::regex_search(input.data(), input.data() + input.size(),
4547
                                matches, re,
4548
                                boost::regex_constants::match_continuous);
4549
#endif
4550
        if (!found || matches.prefix().matched) {
4551
            return unexpected_scan_error(scan_error::invalid_scanned_value,
4552
                                         "Regular expression didn't match");
4553
        }
4554
    }
4555
    catch (const std::runtime_error& err) {
4556
        return unexpected_scan_error(scan_error::invalid_format_string,
4557
                                     "Regex matching failed with an error");
4558
    }
4559
4560
    value.resize(matches.size());
4561
    std::transform(
4562
        matches.begin(), matches.end(), value.begin(),
4563
        [&](auto&& match) -> std::optional<basic_regex_match<CharT>> {
4564
            if (!match.matched)
4565
                return std::nullopt;
4566
            auto sv = detail::make_string_view_from_pointers(match.first,
4567
                                                             match.second);
4568
4569
            if (auto name_it = std::find_if(
4570
                    names.begin(), names.end(),
4571
                    [&](const auto& name) { return match == matches[name]; });
4572
                name_it != names.end()) {
4573
                return basic_regex_match<CharT>{sv, *name_it};
4574
            }
4575
            return sv;
4576
        });
4577
    return input.begin() + ranges::distance(input.data(), matches[0].second);
4578
#elif SCN_REGEX_BACKEND == SCN_REGEX_BACKEND_RE2
4579
    static_assert(std::is_same_v<CharT, char>);
4580
    std::string flagged_pattern{};
4581
    auto re = [&]() {
4582
        auto [opts, flagstr] = make_regex_flags(flags);
4583
        if (flagstr.empty()) {
4584
            return re2::RE2{pattern, opts};
4585
        }
4586
        flagged_pattern.reserve(flagstr.size() + pattern.size());
4587
        flagged_pattern.append(flagstr);
4588
        flagged_pattern.append(pattern);
4589
        return re2::RE2{flagged_pattern, opts};
4590
    }();
4591
    if (!re.ok()) {
4592
        return unexpected_scan_error(scan_error::invalid_format_string,
4593
                                     "Failed to parse regular expression");
4594
    }
4595
    // TODO: Optimize into a single batch allocation
4596
    const auto max_matches_n =
4597
        static_cast<size_t>(re.NumberOfCapturingGroups());
4598
    std::vector<std::optional<std::string_view>> matches(max_matches_n);
4599
    std::vector<re2::RE2::Arg> match_args(max_matches_n);
4600
    std::vector<re2::RE2::Arg*> match_argptrs(max_matches_n);
4601
    std::transform(matches.begin(), matches.end(), match_args.begin(),
4602
                   [](auto& val) { return re2::RE2::Arg{&val}; });
4603
    std::transform(match_args.begin(), match_args.end(), match_argptrs.begin(),
4604
                   [](auto& arg) { return &arg; });
4605
    auto new_input = detail::make_string_view_from_pointers(
4606
        detail::to_address(input.begin()), detail::to_address(input.end()));
4607
    bool found = re2::RE2::ConsumeN(&new_input, re, match_argptrs.data(),
4608
                                    match_argptrs.size());
4609
    if (!found) {
4610
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4611
                                     "Regular expression didn't match");
4612
    }
4613
    value.resize(matches.size() + 1);
4614
    value[0] =
4615
        detail::make_string_view_from_pointers(input.data(), new_input.data());
4616
    std::transform(matches.begin(), matches.end(), value.begin() + 1,
4617
                   [&](auto&& match) -> std::optional<regex_match> {
4618
                       if (!match)
4619
                           return std::nullopt;
4620
                       return *match;
4621
                   });
4622
    {
4623
        const auto& capturing_groups = re.CapturingGroupNames();
4624
        for (size_t i = 1; i < value.size(); ++i) {
4625
            if (auto it = capturing_groups.find(static_cast<int>(i));
4626
                it != capturing_groups.end()) {
4627
                auto val = value[i]->get();
4628
                value[i].emplace(val, it->second);
4629
            };
4630
        }
4631
    }
4632
    return input.begin() + ranges::distance(input.data(), new_input.data());
4633
#endif  // SCN_REGEX_BACKEND == ...
4634
0
}
Unexecuted instantiation: _ZN3scn2v34impl23read_regex_matches_implIcNSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEENS4_IT_NS5_ISE_EEEENS0_6detail11regex_flagsESA_RNS0_19basic_regex_matchesISE_EE
Unexecuted instantiation: _ZN3scn2v34impl23read_regex_matches_implIcNS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT0_EEEEEENSt3__117basic_string_viewIT_NSF_11char_traitsISH_EEEENS0_6detail11regex_flagsESB_RNS0_19basic_regex_matchesISH_EE
Unexecuted instantiation: _ZN3scn2v34impl23read_regex_matches_implIwNSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEENS4_IT_NS5_ISE_EEEENS0_6detail11regex_flagsESA_RNS0_19basic_regex_matchesISE_EE
Unexecuted instantiation: _ZN3scn2v34impl23read_regex_matches_implIwNS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT0_EEEEEENSt3__117basic_string_viewIT_NSF_11char_traitsISH_EEEENS0_6detail11regex_flagsESB_RNS0_19basic_regex_matchesISH_EE
4635
4636
inline std::string get_unescaped_regex_pattern(std::string_view pattern)
4637
2.12k
{
4638
2.12k
    std::string result{pattern};
4639
13.2k
    for (size_t n = 0; (n = result.find("\\/", n)) != std::string::npos;) {
4640
11.0k
        result.replace(n, 2, "/");
4641
11.0k
        ++n;
4642
11.0k
    }
4643
2.12k
    return result;
4644
2.12k
}
4645
inline std::wstring get_unescaped_regex_pattern(std::wstring_view pattern)
4646
258
{
4647
258
    std::wstring result{pattern};
4648
1.86k
    for (size_t n = 0; (n = result.find(L"\\/", n)) != std::wstring::npos;) {
4649
1.60k
        result.replace(n, 2, L"/");
4650
1.60k
        ++n;
4651
1.60k
    }
4652
258
    return result;
4653
258
}
4654
4655
#endif  // !SCN_DISABLE_REGEX
4656
4657
template <typename SourceCharT>
4658
struct regex_matches_reader
4659
    : public reader_base<regex_matches_reader<SourceCharT>, SourceCharT> {
4660
    void check_specs_impl(const detail::format_specs& specs,
4661
                          reader_error_handler& eh)
4662
0
    {
4663
0
        detail::check_regex_type_specs(specs, eh);
4664
0
        SCN_EXPECT(specs.charset_string_data != nullptr);
4665
0
        SCN_EXPECT(specs.charset_string_size > 0);
4666
0
    }
Unexecuted instantiation: scn::v3::impl::regex_matches_reader<char>::check_specs_impl(scn::v3::detail::format_specs const&, scn::v3::impl::reader_error_handler&)
Unexecuted instantiation: scn::v3::impl::regex_matches_reader<wchar_t>::check_specs_impl(scn::v3::detail::format_specs const&, scn::v3::impl::reader_error_handler&)
4667
4668
    template <typename Range, typename DestCharT>
4669
    auto read_default(Range,
4670
                      basic_regex_matches<DestCharT>&,
4671
                      detail::locale_ref = {})
4672
        -> scan_expected<ranges::const_iterator_t<Range>>
4673
0
    {
4674
0
        return unexpected_scan_error(
4675
0
            scan_error::invalid_format_string,
4676
0
            "No regex given in format string for scanning regex_matches");
4677
0
    }
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS0_19basic_regex_matchesIT0_EENS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS0_19basic_regex_matchesIT0_EENS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS0_19basic_regex_matchesIT0_EENS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNS0_19basic_regex_matchesIT0_EENS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
4678
4679
    template <typename Range, typename DestCharT>
4680
    auto read_specs(Range range,
4681
                    const detail::format_specs& specs,
4682
                    basic_regex_matches<DestCharT>& value,
4683
                    detail::locale_ref = {})
4684
        -> scan_expected<ranges::const_iterator_t<Range>>
4685
0
    {
4686
0
        if constexpr (!std::is_same_v<SourceCharT, DestCharT>) {
4687
0
            return unexpected_scan_error(
4688
0
                scan_error::invalid_scanned_value,
4689
0
                "Cannot transcode is regex_matches_reader");
4690
        }
4691
        else if constexpr (!SCN_REGEX_SUPPORTS_WIDE_STRINGS &&
4692
                           !std::is_same_v<SourceCharT, char>) {
4693
            return unexpected_scan_error(
4694
                scan_error::invalid_scanned_value,
4695
                "Regex backend doesn't support wide strings as input");
4696
        }
4697
0
        else {
4698
0
            if (!is_entire_source_contiguous(range)) {
4699
0
                return unexpected_scan_error(
4700
0
                    scan_error::invalid_scanned_value,
4701
0
                    "Cannot use regex with a non-contiguous source "
4702
0
                    "range");
4703
0
            }
4704
4705
0
            auto input = get_as_contiguous(range);
4706
0
            SCN_TRY(it,
4707
0
                    impl(input,
4708
0
                         specs.type == detail::presentation_type::regex_escaped,
4709
0
                         specs.charset_string<SourceCharT>(),
4710
0
                         specs.regexp_flags, value));
4711
0
            return ranges::next(range.begin(),
4712
0
                                ranges::distance(input.begin(), it));
4713
0
        }
4714
0
    }
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNS0_19basic_regex_matchesIT0_EENSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNS0_19basic_regex_matchesIT0_EENSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNS0_19basic_regex_matchesIT0_EENSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNS0_19basic_regex_matchesIT0_EENSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNS0_19basic_regex_matchesIT0_EENS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20regex_matches_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNS0_19basic_regex_matchesIT0_EENSL_10locale_refE
4715
4716
private:
4717
    template <typename Range, typename DestCharT>
4718
    auto impl(Range input,
4719
              bool is_escaped,
4720
              std::basic_string_view<SourceCharT> pattern,
4721
              detail::regex_flags flags,
4722
              basic_regex_matches<DestCharT>& value)
4723
0
    {
4724
        if constexpr (detail::is_type_disabled<
4725
                          basic_regex_matches<DestCharT>>) {
4726
            SCN_EXPECT(false);
4727
            SCN_UNREACHABLE;
4728
        }
4729
0
        else {
4730
0
            if (is_escaped) {
4731
0
                return read_regex_matches_impl<SourceCharT>(
4732
0
                    get_unescaped_regex_pattern(pattern), flags, input, value);
4733
0
            }
4734
0
            return read_regex_matches_impl(pattern, flags, input, value);
4735
0
        }
4736
0
    }
Unexecuted instantiation: auto scn::v3::impl::regex_matches_reader<char>::impl<std::__1::basic_string_view<char, std::__1::char_traits<char> >, char>(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool, std::__1::basic_string_view<char, std::__1::char_traits<char> >, scn::v3::detail::regex_flags, scn::v3::basic_regex_matches<char>&)
Unexecuted instantiation: auto scn::v3::impl::regex_matches_reader<char>::impl<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>, char>(scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>, bool, std::__1::basic_string_view<char, std::__1::char_traits<char> >, scn::v3::detail::regex_flags, scn::v3::basic_regex_matches<char>&)
Unexecuted instantiation: auto scn::v3::impl::regex_matches_reader<wchar_t>::impl<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, wchar_t>(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, bool, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, scn::v3::detail::regex_flags, scn::v3::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: auto scn::v3::impl::regex_matches_reader<wchar_t>::impl<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, wchar_t>(scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>, bool, std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, scn::v3::detail::regex_flags, scn::v3::basic_regex_matches<wchar_t>&)
4737
};
4738
4739
template <typename CharT>
4740
struct reader_impl_for_regex_matches : public regex_matches_reader<CharT> {};
4741
4742
/////////////////////////////////////////////////////////////////
4743
// String reader
4744
/////////////////////////////////////////////////////////////////
4745
4746
template <typename Range, typename Iterator, typename ValueCharT>
4747
auto read_string_impl(Range range,
4748
                      Iterator&& result,
4749
                      std::basic_string<ValueCharT>& value)
4750
    -> scan_expected<ranges::const_iterator_t<Range>>
4751
34.4k
{
4752
34.4k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
34.4k
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
34.4k
    if (!validate_unicode(src.view())) {
4756
2.40k
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
2.40k
                                     "Invalid encoding in scanned string");
4758
2.40k
    }
4759
32.0k
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
32.0k
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
32.0k
    return SCN_MOVE(result);
4765
32.0k
}
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_12basic_stringIT1_NSJ_11char_traitsISU_EENSJ_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_12basic_stringIT1_NSK_11char_traitsISV_EENSK_9allocatorISV_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEESA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_12basic_stringIT1_NSE_11char_traitsISP_EENSE_9allocatorISP_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEERSA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_12basic_stringIT1_NSF_11char_traitsISQ_EENSF_9allocatorISQ_EEEE
_ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_12basic_stringIT1_NSG_11char_traitsISR_EENSG_9allocatorISR_EEEE
Line
Count
Source
4751
340
{
4752
340
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
340
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
340
    if (!validate_unicode(src.view())) {
4756
112
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
112
                                     "Invalid encoding in scanned string");
4758
112
    }
4759
228
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
228
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
228
    return SCN_MOVE(result);
4765
228
}
_ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_12basic_stringIT1_NSH_11char_traitsISS_EENSH_9allocatorISS_EEEE
Line
Count
Source
4751
210
{
4752
210
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
210
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
210
    if (!validate_unicode(src.view())) {
4756
54
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
54
                                     "Invalid encoding in scanned string");
4758
54
    }
4759
156
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
156
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
156
    return SCN_MOVE(result);
4765
156
}
_ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EES8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_12basic_stringIT1_NSB_11char_traitsISM_EENSB_9allocatorISM_EEEE
Line
Count
Source
4751
1.00k
{
4752
1.00k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
1.00k
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
1.00k
    if (!validate_unicode(src.view())) {
4756
324
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
324
                                     "Invalid encoding in scanned string");
4758
324
    }
4759
678
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
678
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
678
    return SCN_MOVE(result);
4765
678
}
_ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EERS8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_12basic_stringIT1_NSC_11char_traitsISN_EENSC_9allocatorISN_EEEE
Line
Count
Source
4751
1.34k
{
4752
1.34k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
1.34k
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
1.34k
    if (!validate_unicode(src.view())) {
4756
150
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
150
                                     "Invalid encoding in scanned string");
4758
150
    }
4759
1.19k
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
1.19k
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
1.19k
    return SCN_MOVE(result);
4765
1.19k
}
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_12basic_stringIT1_NSJ_11char_traitsISU_EENSJ_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_12basic_stringIT1_NSK_11char_traitsISV_EENSK_9allocatorISV_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEESA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_12basic_stringIT1_NSE_11char_traitsISP_EENSE_9allocatorISP_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEERSA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_12basic_stringIT1_NSF_11char_traitsISQ_EENSF_9allocatorISQ_EEEE
_ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_12basic_stringIT1_NSG_11char_traitsISR_EENSG_9allocatorISR_EEEE
Line
Count
Source
4751
340
{
4752
340
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
340
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
340
    if (!validate_unicode(src.view())) {
4756
112
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
112
                                     "Invalid encoding in scanned string");
4758
112
    }
4759
228
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
228
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
228
    return SCN_MOVE(result);
4765
228
}
_ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_12basic_stringIT1_NSH_11char_traitsISS_EENSH_9allocatorISS_EEEE
Line
Count
Source
4751
210
{
4752
210
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
210
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
210
    if (!validate_unicode(src.view())) {
4756
54
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
54
                                     "Invalid encoding in scanned string");
4758
54
    }
4759
156
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
156
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
156
    return SCN_MOVE(result);
4765
156
}
_ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EES8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_12basic_stringIT1_NSB_11char_traitsISM_EENSB_9allocatorISM_EEEE
Line
Count
Source
4751
1.00k
{
4752
1.00k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
1.00k
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
1.00k
    if (!validate_unicode(src.view())) {
4756
324
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
324
                                     "Invalid encoding in scanned string");
4758
324
    }
4759
678
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
678
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
678
    return SCN_MOVE(result);
4765
678
}
_ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EERS8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_12basic_stringIT1_NSC_11char_traitsISN_EENSC_9allocatorISN_EEEE
Line
Count
Source
4751
1.34k
{
4752
1.34k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
1.34k
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
1.34k
    if (!validate_unicode(src.view())) {
4756
150
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
150
                                     "Invalid encoding in scanned string");
4758
150
    }
4759
1.19k
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
1.19k
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
1.19k
    return SCN_MOVE(result);
4765
1.19k
}
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_12basic_stringIT1_NSJ_11char_traitsISU_EENSJ_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_12basic_stringIT1_NSK_11char_traitsISV_EENSK_9allocatorISV_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEESA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_12basic_stringIT1_NSE_11char_traitsISP_EENSE_9allocatorISP_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEERSA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_12basic_stringIT1_NSF_11char_traitsISQ_EENSF_9allocatorISQ_EEEE
_ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_12basic_stringIT1_NSG_11char_traitsISR_EENSG_9allocatorISR_EEEE
Line
Count
Source
4751
160
{
4752
160
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
160
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
160
    if (!validate_unicode(src.view())) {
4756
82
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
82
                                     "Invalid encoding in scanned string");
4758
82
    }
4759
78
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
78
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
78
    return SCN_MOVE(result);
4765
78
}
_ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_12basic_stringIT1_NSH_11char_traitsISS_EENSH_9allocatorISS_EEEE
Line
Count
Source
4751
56
{
4752
56
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
56
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
56
    if (!validate_unicode(src.view())) {
4756
0
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
0
                                     "Invalid encoding in scanned string");
4758
0
    }
4759
56
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
56
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
56
    return SCN_MOVE(result);
4765
56
}
_ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EES8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_12basic_stringIT1_NSB_11char_traitsISM_EENSB_9allocatorISM_EEEE
Line
Count
Source
4751
13.4k
{
4752
13.4k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
13.4k
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
13.4k
    if (!validate_unicode(src.view())) {
4756
312
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
312
                                     "Invalid encoding in scanned string");
4758
312
    }
4759
13.1k
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
13.1k
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
13.1k
    return SCN_MOVE(result);
4765
13.1k
}
_ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EERS8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_12basic_stringIT1_NSC_11char_traitsISN_EENSC_9allocatorISN_EEEE
Line
Count
Source
4751
642
{
4752
642
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
642
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
642
    if (!validate_unicode(src.view())) {
4756
168
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
168
                                     "Invalid encoding in scanned string");
4758
168
    }
4759
474
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
474
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
474
    return SCN_MOVE(result);
4765
474
}
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_12basic_stringIT1_NSJ_11char_traitsISU_EENSJ_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_12basic_stringIT1_NSK_11char_traitsISV_EENSK_9allocatorISV_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEESA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_12basic_stringIT1_NSE_11char_traitsISP_EENSE_9allocatorISP_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEERSA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_12basic_stringIT1_NSF_11char_traitsISQ_EENSF_9allocatorISQ_EEEE
_ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_12basic_stringIT1_NSG_11char_traitsISR_EENSG_9allocatorISR_EEEE
Line
Count
Source
4751
160
{
4752
160
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
160
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
160
    if (!validate_unicode(src.view())) {
4756
82
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
82
                                     "Invalid encoding in scanned string");
4758
82
    }
4759
78
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
78
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
78
    return SCN_MOVE(result);
4765
78
}
_ZN3scn2v34impl16read_string_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_12basic_stringIT1_NSH_11char_traitsISS_EENSH_9allocatorISS_EEEE
Line
Count
Source
4751
56
{
4752
56
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
56
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
56
    if (!validate_unicode(src.view())) {
4756
0
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
0
                                     "Invalid encoding in scanned string");
4758
0
    }
4759
56
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
56
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
56
    return SCN_MOVE(result);
4765
56
}
_ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EES8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_12basic_stringIT1_NSB_11char_traitsISM_EENSB_9allocatorISM_EEEE
Line
Count
Source
4751
13.4k
{
4752
13.4k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
13.4k
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
13.4k
    if (!validate_unicode(src.view())) {
4756
312
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
312
                                     "Invalid encoding in scanned string");
4758
312
    }
4759
13.1k
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
13.1k
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
13.1k
    return SCN_MOVE(result);
4765
13.1k
}
_ZN3scn2v34impl16read_string_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EERS8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_12basic_stringIT1_NSC_11char_traitsISN_EENSC_9allocatorISN_EEEE
Line
Count
Source
4751
642
{
4752
642
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4753
4754
642
    auto src = make_contiguous_buffer(ranges::subrange{range.begin(), result});
4755
642
    if (!validate_unicode(src.view())) {
4756
168
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4757
168
                                     "Invalid encoding in scanned string");
4758
168
    }
4759
474
    if (auto e = transcode_if_necessary(SCN_MOVE(src), value);
4760
474
        SCN_UNLIKELY(!e)) {
4761
0
        return unexpected(e);
4762
0
    }
4763
4764
474
    return SCN_MOVE(result);
4765
474
}
4766
4767
template <typename Range, typename Iterator, typename ValueCharT>
4768
auto read_string_view_impl(Range range,
4769
                           Iterator&& result,
4770
                           std::basic_string_view<ValueCharT>& value)
4771
    -> scan_expected<ranges::const_iterator_t<Range>>
4772
17.2k
{
4773
17.2k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4774
4775
17.2k
    auto src = [&]() {
4776
17.2k
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
766
            return make_contiguous_buffer(
4778
766
                ranges::subrange{range.begin().base(), result.base()});
4779
        }
4780
16.4k
        else {
4781
16.4k
            return make_contiguous_buffer(
4782
16.4k
                ranges::subrange{range.begin(), result});
4783
16.4k
        }
4784
17.2k
    }();
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEESA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEERSA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEEENKUlvE_clEv
_ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEEENKUlvE_clEv
Line
Count
Source
4775
340
    auto src = [&]() {
4776
340
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
340
            return make_contiguous_buffer(
4778
340
                ranges::subrange{range.begin().base(), result.base()});
4779
        }
4780
        else {
4781
            return make_contiguous_buffer(
4782
                ranges::subrange{range.begin(), result});
4783
        }
4784
340
    }();
_ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEEENKUlvE_clEv
Line
Count
Source
4775
210
    auto src = [&]() {
4776
210
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
210
            return make_contiguous_buffer(
4778
210
                ranges::subrange{range.begin().base(), result.base()});
4779
        }
4780
        else {
4781
            return make_contiguous_buffer(
4782
                ranges::subrange{range.begin(), result});
4783
        }
4784
210
    }();
_ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EES8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEEENKUlvE_clEv
Line
Count
Source
4775
1.00k
    auto src = [&]() {
4776
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
            return make_contiguous_buffer(
4778
                ranges::subrange{range.begin().base(), result.base()});
4779
        }
4780
1.00k
        else {
4781
1.00k
            return make_contiguous_buffer(
4782
1.00k
                ranges::subrange{range.begin(), result});
4783
1.00k
        }
4784
1.00k
    }();
_ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EERS8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEEENKUlvE_clEv
Line
Count
Source
4775
1.34k
    auto src = [&]() {
4776
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
            return make_contiguous_buffer(
4778
                ranges::subrange{range.begin().base(), result.base()});
4779
        }
4780
1.34k
        else {
4781
1.34k
            return make_contiguous_buffer(
4782
1.34k
                ranges::subrange{range.begin(), result});
4783
1.34k
        }
4784
1.34k
    }();
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEESA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEERSA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EES8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EERS8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEESA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEERSA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EES8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EERS8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEESA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEEENKUlvE_clEv
Unexecuted instantiation: _ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEERSA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEEENKUlvE_clEv
_ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEEENKUlvE_clEv
Line
Count
Source
4775
160
    auto src = [&]() {
4776
160
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
160
            return make_contiguous_buffer(
4778
160
                ranges::subrange{range.begin().base(), result.base()});
4779
        }
4780
        else {
4781
            return make_contiguous_buffer(
4782
                ranges::subrange{range.begin(), result});
4783
        }
4784
160
    }();
_ZZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEEENKUlvE_clEv
Line
Count
Source
4775
56
    auto src = [&]() {
4776
56
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
56
            return make_contiguous_buffer(
4778
56
                ranges::subrange{range.begin().base(), result.base()});
4779
        }
4780
        else {
4781
            return make_contiguous_buffer(
4782
                ranges::subrange{range.begin(), result});
4783
        }
4784
56
    }();
_ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EES8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEEENKUlvE_clEv
Line
Count
Source
4775
13.4k
    auto src = [&]() {
4776
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
            return make_contiguous_buffer(
4778
                ranges::subrange{range.begin().base(), result.base()});
4779
        }
4780
13.4k
        else {
4781
13.4k
            return make_contiguous_buffer(
4782
13.4k
                ranges::subrange{range.begin(), result});
4783
13.4k
        }
4784
13.4k
    }();
_ZZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EERS8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEEENKUlvE_clEv
Line
Count
Source
4775
642
    auto src = [&]() {
4776
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
            return make_contiguous_buffer(
4778
                ranges::subrange{range.begin().base(), result.base()});
4779
        }
4780
642
        else {
4781
642
            return make_contiguous_buffer(
4782
642
                ranges::subrange{range.begin(), result});
4783
642
        }
4784
642
    }();
4785
17.2k
    using src_type = decltype(src);
4786
4787
17.2k
    if (src.stores_allocated_string()) {
4788
0
        return unexpected_scan_error(
4789
0
            scan_error::invalid_scanned_value,
4790
0
            "Cannot read a string_view from this source range (not "
4791
0
            "contiguous)");
4792
0
    }
4793
17.2k
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4794
0
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4795
0
                                     "Cannot read a string_view from "
4796
0
                                     "this source range (would require "
4797
0
                                     "transcoding)");
4798
    }
4799
17.2k
    else {
4800
17.2k
        const auto view = src.view();
4801
17.2k
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4802
4803
17.2k
        if (!validate_unicode(value)) {
4804
1.20k
            return unexpected_scan_error(
4805
1.20k
                scan_error::invalid_scanned_value,
4806
1.20k
                "Invalid encoding in scanned string_view");
4807
1.20k
        }
4808
4809
16.0k
        return SCN_MOVE(result);
4810
17.2k
    }
4811
17.2k
}
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEESA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEERSA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEE
_ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEE
Line
Count
Source
4772
340
{
4773
340
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4774
4775
340
    auto src = [&]() {
4776
340
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
340
            return make_contiguous_buffer(
4778
340
                ranges::subrange{range.begin().base(), result.base()});
4779
340
        }
4780
340
        else {
4781
340
            return make_contiguous_buffer(
4782
340
                ranges::subrange{range.begin(), result});
4783
340
        }
4784
340
    }();
4785
340
    using src_type = decltype(src);
4786
4787
340
    if (src.stores_allocated_string()) {
4788
0
        return unexpected_scan_error(
4789
0
            scan_error::invalid_scanned_value,
4790
0
            "Cannot read a string_view from this source range (not "
4791
0
            "contiguous)");
4792
0
    }
4793
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4794
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4795
                                     "Cannot read a string_view from "
4796
                                     "this source range (would require "
4797
                                     "transcoding)");
4798
    }
4799
340
    else {
4800
340
        const auto view = src.view();
4801
340
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4802
4803
340
        if (!validate_unicode(value)) {
4804
112
            return unexpected_scan_error(
4805
112
                scan_error::invalid_scanned_value,
4806
112
                "Invalid encoding in scanned string_view");
4807
112
        }
4808
4809
228
        return SCN_MOVE(result);
4810
340
    }
4811
340
}
_ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEE
Line
Count
Source
4772
210
{
4773
210
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4774
4775
210
    auto src = [&]() {
4776
210
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
210
            return make_contiguous_buffer(
4778
210
                ranges::subrange{range.begin().base(), result.base()});
4779
210
        }
4780
210
        else {
4781
210
            return make_contiguous_buffer(
4782
210
                ranges::subrange{range.begin(), result});
4783
210
        }
4784
210
    }();
4785
210
    using src_type = decltype(src);
4786
4787
210
    if (src.stores_allocated_string()) {
4788
0
        return unexpected_scan_error(
4789
0
            scan_error::invalid_scanned_value,
4790
0
            "Cannot read a string_view from this source range (not "
4791
0
            "contiguous)");
4792
0
    }
4793
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4794
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4795
                                     "Cannot read a string_view from "
4796
                                     "this source range (would require "
4797
                                     "transcoding)");
4798
    }
4799
210
    else {
4800
210
        const auto view = src.view();
4801
210
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4802
4803
210
        if (!validate_unicode(value)) {
4804
54
            return unexpected_scan_error(
4805
54
                scan_error::invalid_scanned_value,
4806
54
                "Invalid encoding in scanned string_view");
4807
54
        }
4808
4809
156
        return SCN_MOVE(result);
4810
210
    }
4811
210
}
_ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EES8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEE
Line
Count
Source
4772
1.00k
{
4773
1.00k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4774
4775
1.00k
    auto src = [&]() {
4776
1.00k
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
1.00k
            return make_contiguous_buffer(
4778
1.00k
                ranges::subrange{range.begin().base(), result.base()});
4779
1.00k
        }
4780
1.00k
        else {
4781
1.00k
            return make_contiguous_buffer(
4782
1.00k
                ranges::subrange{range.begin(), result});
4783
1.00k
        }
4784
1.00k
    }();
4785
1.00k
    using src_type = decltype(src);
4786
4787
1.00k
    if (src.stores_allocated_string()) {
4788
0
        return unexpected_scan_error(
4789
0
            scan_error::invalid_scanned_value,
4790
0
            "Cannot read a string_view from this source range (not "
4791
0
            "contiguous)");
4792
0
    }
4793
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4794
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4795
                                     "Cannot read a string_view from "
4796
                                     "this source range (would require "
4797
                                     "transcoding)");
4798
    }
4799
1.00k
    else {
4800
1.00k
        const auto view = src.view();
4801
1.00k
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4802
4803
1.00k
        if (!validate_unicode(value)) {
4804
324
            return unexpected_scan_error(
4805
324
                scan_error::invalid_scanned_value,
4806
324
                "Invalid encoding in scanned string_view");
4807
324
        }
4808
4809
678
        return SCN_MOVE(result);
4810
1.00k
    }
4811
1.00k
}
_ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EERS8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEE
Line
Count
Source
4772
1.34k
{
4773
1.34k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4774
4775
1.34k
    auto src = [&]() {
4776
1.34k
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
1.34k
            return make_contiguous_buffer(
4778
1.34k
                ranges::subrange{range.begin().base(), result.base()});
4779
1.34k
        }
4780
1.34k
        else {
4781
1.34k
            return make_contiguous_buffer(
4782
1.34k
                ranges::subrange{range.begin(), result});
4783
1.34k
        }
4784
1.34k
    }();
4785
1.34k
    using src_type = decltype(src);
4786
4787
1.34k
    if (src.stores_allocated_string()) {
4788
0
        return unexpected_scan_error(
4789
0
            scan_error::invalid_scanned_value,
4790
0
            "Cannot read a string_view from this source range (not "
4791
0
            "contiguous)");
4792
0
    }
4793
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4794
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4795
                                     "Cannot read a string_view from "
4796
                                     "this source range (would require "
4797
                                     "transcoding)");
4798
    }
4799
1.34k
    else {
4800
1.34k
        const auto view = src.view();
4801
1.34k
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4802
4803
1.34k
        if (!validate_unicode(value)) {
4804
150
            return unexpected_scan_error(
4805
150
                scan_error::invalid_scanned_value,
4806
150
                "Invalid encoding in scanned string_view");
4807
150
        }
4808
4809
1.19k
        return SCN_MOVE(result);
4810
1.34k
    }
4811
1.34k
}
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEESA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEERSA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EES8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKcS8_EERS8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEESA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEERSA_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEcEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EES8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EERS8_cEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_OT0_RNSJ_17basic_string_viewIT1_NSJ_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEERNS1_27counted_width_iterator_impl22counted_width_iteratorISB_SC_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESM_OT0_RNSK_17basic_string_viewIT1_NSK_11char_traitsISV_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEESA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_OT0_RNSE_17basic_string_viewIT1_NSE_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEERSA_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_OT0_RNSF_17basic_string_viewIT1_NSF_11char_traitsISQ_EEEE
_ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_OT0_RNSG_17basic_string_viewIT1_NSG_11char_traitsISR_EEEE
Line
Count
Source
4772
160
{
4773
160
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4774
4775
160
    auto src = [&]() {
4776
160
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
160
            return make_contiguous_buffer(
4778
160
                ranges::subrange{range.begin().base(), result.base()});
4779
160
        }
4780
160
        else {
4781
160
            return make_contiguous_buffer(
4782
160
                ranges::subrange{range.begin(), result});
4783
160
        }
4784
160
    }();
4785
160
    using src_type = decltype(src);
4786
4787
160
    if (src.stores_allocated_string()) {
4788
0
        return unexpected_scan_error(
4789
0
            scan_error::invalid_scanned_value,
4790
0
            "Cannot read a string_view from this source range (not "
4791
0
            "contiguous)");
4792
0
    }
4793
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4794
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4795
                                     "Cannot read a string_view from "
4796
                                     "this source range (would require "
4797
                                     "transcoding)");
4798
    }
4799
160
    else {
4800
160
        const auto view = src.view();
4801
160
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4802
4803
160
        if (!validate_unicode(value)) {
4804
82
            return unexpected_scan_error(
4805
82
                scan_error::invalid_scanned_value,
4806
82
                "Invalid encoding in scanned string_view");
4807
82
        }
4808
4809
78
        return SCN_MOVE(result);
4810
160
    }
4811
160
}
_ZN3scn2v34impl21read_string_view_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEERNS1_27counted_width_iterator_impl22counted_width_iteratorIS9_S9_EEwEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_OT0_RNSH_17basic_string_viewIT1_NSH_11char_traitsISS_EEEE
Line
Count
Source
4772
56
{
4773
56
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4774
4775
56
    auto src = [&]() {
4776
56
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
56
            return make_contiguous_buffer(
4778
56
                ranges::subrange{range.begin().base(), result.base()});
4779
56
        }
4780
56
        else {
4781
56
            return make_contiguous_buffer(
4782
56
                ranges::subrange{range.begin(), result});
4783
56
        }
4784
56
    }();
4785
56
    using src_type = decltype(src);
4786
4787
56
    if (src.stores_allocated_string()) {
4788
0
        return unexpected_scan_error(
4789
0
            scan_error::invalid_scanned_value,
4790
0
            "Cannot read a string_view from this source range (not "
4791
0
            "contiguous)");
4792
0
    }
4793
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4794
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4795
                                     "Cannot read a string_view from "
4796
                                     "this source range (would require "
4797
                                     "transcoding)");
4798
    }
4799
56
    else {
4800
56
        const auto view = src.view();
4801
56
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4802
4803
56
        if (!validate_unicode(value)) {
4804
0
            return unexpected_scan_error(
4805
0
                scan_error::invalid_scanned_value,
4806
0
                "Invalid encoding in scanned string_view");
4807
0
        }
4808
4809
56
        return SCN_MOVE(result);
4810
56
    }
4811
56
}
_ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EES8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESD_OT0_RNSB_17basic_string_viewIT1_NSB_11char_traitsISM_EEEE
Line
Count
Source
4772
13.4k
{
4773
13.4k
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4774
4775
13.4k
    auto src = [&]() {
4776
13.4k
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
13.4k
            return make_contiguous_buffer(
4778
13.4k
                ranges::subrange{range.begin().base(), result.base()});
4779
13.4k
        }
4780
13.4k
        else {
4781
13.4k
            return make_contiguous_buffer(
4782
13.4k
                ranges::subrange{range.begin(), result});
4783
13.4k
        }
4784
13.4k
    }();
4785
13.4k
    using src_type = decltype(src);
4786
4787
13.4k
    if (src.stores_allocated_string()) {
4788
0
        return unexpected_scan_error(
4789
0
            scan_error::invalid_scanned_value,
4790
0
            "Cannot read a string_view from this source range (not "
4791
0
            "contiguous)");
4792
0
    }
4793
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4794
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4795
                                     "Cannot read a string_view from "
4796
                                     "this source range (would require "
4797
                                     "transcoding)");
4798
    }
4799
13.4k
    else {
4800
13.4k
        const auto view = src.view();
4801
13.4k
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4802
4803
13.4k
        if (!validate_unicode(value)) {
4804
312
            return unexpected_scan_error(
4805
312
                scan_error::invalid_scanned_value,
4806
312
                "Invalid encoding in scanned string_view");
4807
312
        }
4808
4809
13.1k
        return SCN_MOVE(result);
4810
13.4k
    }
4811
13.4k
}
_ZN3scn2v34impl21read_string_view_implINS0_6ranges6detail9subrange_8subrangeIPKwS8_EERS8_wEENS0_13scan_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_OT0_RNSC_17basic_string_viewIT1_NSC_11char_traitsISN_EEEE
Line
Count
Source
4772
642
{
4773
642
    static_assert(ranges::forward_iterator<detail::remove_cvref_t<Iterator>>);
4774
4775
642
    auto src = [&]() {
4776
642
        if constexpr (detail::is_specialization_of_v<Range, take_width_view>) {
4777
642
            return make_contiguous_buffer(
4778
642
                ranges::subrange{range.begin().base(), result.base()});
4779
642
        }
4780
642
        else {
4781
642
            return make_contiguous_buffer(
4782
642
                ranges::subrange{range.begin(), result});
4783
642
        }
4784
642
    }();
4785
642
    using src_type = decltype(src);
4786
4787
642
    if (src.stores_allocated_string()) {
4788
0
        return unexpected_scan_error(
4789
0
            scan_error::invalid_scanned_value,
4790
0
            "Cannot read a string_view from this source range (not "
4791
0
            "contiguous)");
4792
0
    }
4793
    if constexpr (!std::is_same_v<typename src_type::char_type, ValueCharT>) {
4794
        return unexpected_scan_error(scan_error::invalid_scanned_value,
4795
                                     "Cannot read a string_view from "
4796
                                     "this source range (would require "
4797
                                     "transcoding)");
4798
    }
4799
642
    else {
4800
642
        const auto view = src.view();
4801
642
        value = std::basic_string_view<ValueCharT>(view.data(), view.size());
4802
4803
642
        if (!validate_unicode(value)) {
4804
168
            return unexpected_scan_error(
4805
168
                scan_error::invalid_scanned_value,
4806
168
                "Invalid encoding in scanned string_view");
4807
168
        }
4808
4809
474
        return SCN_MOVE(result);
4810
642
    }
4811
642
}
4812
4813
template <typename SourceCharT>
4814
class word_reader_impl {
4815
public:
4816
    template <typename Range, typename ValueCharT>
4817
    auto read(Range range, std::basic_string<ValueCharT>& value)
4818
        -> scan_expected<ranges::const_iterator_t<Range>>
4819
29.4k
    {
4820
29.4k
        return read_string_impl(range, read_until_classic_space(range), value);
4821
29.4k
    }
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v34impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4819
244
    {
4820
244
        return read_string_impl(range, read_until_classic_space(range), value);
4821
244
    }
_ZN3scn2v34impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
Line
Count
Source
4819
946
    {
4820
946
        return read_string_impl(range, read_until_classic_space(range), value);
4821
946
    }
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v34impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4819
244
    {
4820
244
        return read_string_impl(range, read_until_classic_space(range), value);
4821
244
    }
_ZN3scn2v34impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
Line
Count
Source
4819
946
    {
4820
946
        return read_string_impl(range, read_until_classic_space(range), value);
4821
946
    }
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v34impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4819
124
    {
4820
124
        return read_string_impl(range, read_until_classic_space(range), value);
4821
124
    }
_ZN3scn2v34impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
Line
Count
Source
4819
13.4k
    {
4820
13.4k
        return read_string_impl(range, read_until_classic_space(range), value);
4821
13.4k
    }
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v34impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4819
124
    {
4820
124
        return read_string_impl(range, read_until_classic_space(range), value);
4821
124
    }
_ZN3scn2v34impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
Line
Count
Source
4819
13.4k
    {
4820
13.4k
        return read_string_impl(range, read_until_classic_space(range), value);
4821
13.4k
    }
4822
4823
    template <typename Range, typename ValueCharT>
4824
    auto read(Range range, std::basic_string_view<ValueCharT>& value)
4825
        -> scan_expected<ranges::const_iterator_t<Range>>
4826
14.7k
    {
4827
14.7k
        return read_string_view_impl(range, read_until_classic_space(range),
4828
14.7k
                                     value);
4829
14.7k
    }
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
_ZN3scn2v34impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Line
Count
Source
4826
244
    {
4827
244
        return read_string_view_impl(range, read_until_classic_space(range),
4828
244
                                     value);
4829
244
    }
_ZN3scn2v34impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
Line
Count
Source
4826
946
    {
4827
946
        return read_string_view_impl(range, read_until_classic_space(range),
4828
946
                                     value);
4829
946
    }
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
_ZN3scn2v34impl16word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Line
Count
Source
4826
124
    {
4827
124
        return read_string_view_impl(range, read_until_classic_space(range),
4828
124
                                     value);
4829
124
    }
_ZN3scn2v34impl16word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
Line
Count
Source
4826
13.4k
    {
4827
13.4k
        return read_string_view_impl(range, read_until_classic_space(range),
4828
13.4k
                                     value);
4829
13.4k
    }
4830
};
4831
4832
template <typename SourceCharT>
4833
class custom_word_reader_impl {
4834
public:
4835
    template <typename Range, typename ValueCharT>
4836
    auto read(Range range,
4837
              const detail::format_specs& specs,
4838
              std::basic_string<ValueCharT>& value)
4839
        -> scan_expected<ranges::const_iterator_t<Range>>
4840
352
    {
4841
352
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4842
240
            return read_string_impl(
4843
240
                range,
4844
240
                read_until_code_unit(
4845
240
                    range,
4846
240
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4847
4.12k
                        SourceCharT ch) { return ch == until; }),
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEEENKUlcE_clEc
_ZZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEEENKUlcE_clEc
Line
Count
Source
4847
782
                        SourceCharT ch) { return ch == until; }),
_ZZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEEENKUlcE_clEc
Line
Count
Source
4847
442
                        SourceCharT ch) { return ch == until; }),
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEEENKUlcE_clEc
_ZZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEEENKUlcE_clEc
Line
Count
Source
4847
782
                        SourceCharT ch) { return ch == until; }),
_ZZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEEENKUlcE_clEc
Line
Count
Source
4847
442
                        SourceCharT ch) { return ch == until; }),
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEEENKUlwE_clEw
_ZZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEEENKUlwE_clEw
Line
Count
Source
4847
350
                        SourceCharT ch) { return ch == until; }),
_ZZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEEENKUlwE_clEw
Line
Count
Source
4847
486
                        SourceCharT ch) { return ch == until; }),
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEEENKUlwE_clEw
_ZZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEEENKUlwE_clEw
Line
Count
Source
4847
350
                        SourceCharT ch) { return ch == until; }),
_ZZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEEENKUlwE_clEw
Line
Count
Source
4847
486
                        SourceCharT ch) { return ch == until; }),
4848
240
                value);
4849
240
        }
4850
112
        return read_string_impl(
4851
112
            range,
4852
112
            read_until_code_units(
4853
112
                range, specs.fill.template get_code_units<SourceCharT>()),
4854
112
            value);
4855
352
    }
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
4840
64
    {
4841
64
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4842
34
            return read_string_impl(
4843
34
                range,
4844
34
                read_until_code_unit(
4845
34
                    range,
4846
34
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4847
34
                        SourceCharT ch) { return ch == until; }),
4848
34
                value);
4849
34
        }
4850
30
        return read_string_impl(
4851
30
            range,
4852
30
            read_until_code_units(
4853
30
                range, specs.fill.template get_code_units<SourceCharT>()),
4854
30
            value);
4855
64
    }
_ZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
4840
56
    {
4841
56
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4842
30
            return read_string_impl(
4843
30
                range,
4844
30
                read_until_code_unit(
4845
30
                    range,
4846
30
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4847
30
                        SourceCharT ch) { return ch == until; }),
4848
30
                value);
4849
30
        }
4850
26
        return read_string_impl(
4851
26
            range,
4852
26
            read_until_code_units(
4853
26
                range, specs.fill.template get_code_units<SourceCharT>()),
4854
26
            value);
4855
56
    }
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
4840
64
    {
4841
64
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4842
34
            return read_string_impl(
4843
34
                range,
4844
34
                read_until_code_unit(
4845
34
                    range,
4846
34
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4847
34
                        SourceCharT ch) { return ch == until; }),
4848
34
                value);
4849
34
        }
4850
30
        return read_string_impl(
4851
30
            range,
4852
30
            read_until_code_units(
4853
30
                range, specs.fill.template get_code_units<SourceCharT>()),
4854
30
            value);
4855
64
    }
_ZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
4840
56
    {
4841
56
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4842
30
            return read_string_impl(
4843
30
                range,
4844
30
                read_until_code_unit(
4845
30
                    range,
4846
30
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4847
30
                        SourceCharT ch) { return ch == until; }),
4848
30
                value);
4849
30
        }
4850
26
        return read_string_impl(
4851
26
            range,
4852
26
            read_until_code_units(
4853
26
                range, specs.fill.template get_code_units<SourceCharT>()),
4854
26
            value);
4855
56
    }
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
4840
20
    {
4841
20
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4842
20
            return read_string_impl(
4843
20
                range,
4844
20
                read_until_code_unit(
4845
20
                    range,
4846
20
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4847
20
                        SourceCharT ch) { return ch == until; }),
4848
20
                value);
4849
20
        }
4850
0
        return read_string_impl(
4851
0
            range,
4852
0
            read_until_code_units(
4853
0
                range, specs.fill.template get_code_units<SourceCharT>()),
4854
0
            value);
4855
20
    }
_ZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
4840
36
    {
4841
36
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4842
36
            return read_string_impl(
4843
36
                range,
4844
36
                read_until_code_unit(
4845
36
                    range,
4846
36
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4847
36
                        SourceCharT ch) { return ch == until; }),
4848
36
                value);
4849
36
        }
4850
0
        return read_string_impl(
4851
0
            range,
4852
0
            read_until_code_units(
4853
0
                range, specs.fill.template get_code_units<SourceCharT>()),
4854
0
            value);
4855
36
    }
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
4840
20
    {
4841
20
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4842
20
            return read_string_impl(
4843
20
                range,
4844
20
                read_until_code_unit(
4845
20
                    range,
4846
20
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4847
20
                        SourceCharT ch) { return ch == until; }),
4848
20
                value);
4849
20
        }
4850
0
        return read_string_impl(
4851
0
            range,
4852
0
            read_until_code_units(
4853
0
                range, specs.fill.template get_code_units<SourceCharT>()),
4854
0
            value);
4855
20
    }
_ZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
4840
36
    {
4841
36
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4842
36
            return read_string_impl(
4843
36
                range,
4844
36
                read_until_code_unit(
4845
36
                    range,
4846
36
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4847
36
                        SourceCharT ch) { return ch == until; }),
4848
36
                value);
4849
36
        }
4850
0
        return read_string_impl(
4851
0
            range,
4852
0
            read_until_code_units(
4853
0
                range, specs.fill.template get_code_units<SourceCharT>()),
4854
0
            value);
4855
36
    }
4856
4857
    template <typename Range, typename ValueCharT>
4858
    auto read(Range range,
4859
              const detail::format_specs& specs,
4860
              std::basic_string_view<ValueCharT>& value)
4861
        -> scan_expected<ranges::const_iterator_t<Range>>
4862
176
    {
4863
176
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4864
120
            return read_string_view_impl(
4865
120
                range,
4866
120
                read_until_code_unit(
4867
120
                    range,
4868
120
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4869
2.06k
                        SourceCharT ch) { return ch == until; }),
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEEENKUlcE_clEc
_ZZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEEENKUlcE_clEc
Line
Count
Source
4869
782
                        SourceCharT ch) { return ch == until; }),
_ZZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEEENKUlcE_clEc
Line
Count
Source
4869
442
                        SourceCharT ch) { return ch == until; }),
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEEENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEEENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEEENKUlwE_clEw
_ZZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEEENKUlwE_clEw
Line
Count
Source
4869
350
                        SourceCharT ch) { return ch == until; }),
_ZZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEEENKUlwE_clEw
Line
Count
Source
4869
486
                        SourceCharT ch) { return ch == until; }),
4870
120
                value);
4871
120
        }
4872
56
        return read_string_view_impl(
4873
56
            range,
4874
56
            read_until_code_units(
4875
56
                range, specs.fill.template get_code_units<SourceCharT>()),
4876
56
            value);
4877
176
    }
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
_ZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Line
Count
Source
4862
64
    {
4863
64
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4864
34
            return read_string_view_impl(
4865
34
                range,
4866
34
                read_until_code_unit(
4867
34
                    range,
4868
34
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4869
34
                        SourceCharT ch) { return ch == until; }),
4870
34
                value);
4871
34
        }
4872
30
        return read_string_view_impl(
4873
30
            range,
4874
30
            read_until_code_units(
4875
30
                range, specs.fill.template get_code_units<SourceCharT>()),
4876
30
            value);
4877
64
    }
_ZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Line
Count
Source
4862
56
    {
4863
56
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4864
30
            return read_string_view_impl(
4865
30
                range,
4866
30
                read_until_code_unit(
4867
30
                    range,
4868
30
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4869
30
                        SourceCharT ch) { return ch == until; }),
4870
30
                value);
4871
30
        }
4872
26
        return read_string_view_impl(
4873
26
            range,
4874
26
            read_until_code_units(
4875
26
                range, specs.fill.template get_code_units<SourceCharT>()),
4876
26
            value);
4877
56
    }
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
_ZN3scn2v34impl23custom_word_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Line
Count
Source
4862
20
    {
4863
20
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4864
20
            return read_string_view_impl(
4865
20
                range,
4866
20
                read_until_code_unit(
4867
20
                    range,
4868
20
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4869
20
                        SourceCharT ch) { return ch == until; }),
4870
20
                value);
4871
20
        }
4872
0
        return read_string_view_impl(
4873
0
            range,
4874
0
            read_until_code_units(
4875
0
                range, specs.fill.template get_code_units<SourceCharT>()),
4876
0
            value);
4877
20
    }
_ZN3scn2v34impl23custom_word_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Line
Count
Source
4862
36
    {
4863
36
        if (specs.fill.size() <= sizeof(SourceCharT)) {
4864
36
            return read_string_view_impl(
4865
36
                range,
4866
36
                read_until_code_unit(
4867
36
                    range,
4868
36
                    [until = specs.fill.template get_code_unit<SourceCharT>()](
4869
36
                        SourceCharT ch) { return ch == until; }),
4870
36
                value);
4871
36
        }
4872
0
        return read_string_view_impl(
4873
0
            range,
4874
0
            read_until_code_units(
4875
0
                range, specs.fill.template get_code_units<SourceCharT>()),
4876
0
            value);
4877
36
    }
4878
};
4879
4880
#if !SCN_DISABLE_REGEX
4881
template <typename SourceCharT>
4882
class regex_string_reader_impl {
4883
public:
4884
    template <typename Range, typename ValueCharT>
4885
    auto read(Range range,
4886
              std::basic_string_view<SourceCharT> pattern,
4887
              detail::regex_flags flags,
4888
              std::basic_string<ValueCharT>& value)
4889
        -> scan_expected<ranges::const_iterator_t<Range>>
4890
14.9k
    {
4891
14.9k
        SCN_TRY(it, impl(range, pattern, flags));
4892
2.44k
        return read_string_impl(range, it, value);
4893
14.9k
    }
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIcNSI_11char_traitsIcEEEENSA_11regex_flagsERNSI_12basic_stringIT0_NSR_ISW_EENSI_9allocatorISW_EEEE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEENS9_11regex_flagsERNSG_12basic_stringIT0_NSP_ISU_EENSG_9allocatorISU_EEEE
_ZN3scn2v34impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEENS0_6detail11regex_flagsERNSF_12basic_stringIT0_NSO_ISU_EENSF_9allocatorISU_EEEE
Line
Count
Source
4890
316
    {
4891
316
        SCN_TRY(it, impl(range, pattern, flags));
4892
0
        return read_string_impl(range, it, value);
4893
316
    }
_ZN3scn2v34impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEENS0_6detail11regex_flagsERNSD_12basic_stringIT0_NSM_ISS_EENSD_9allocatorISS_EEEE
Line
Count
Source
4890
4.73k
    {
4891
4.73k
        SCN_TRY(it, impl(range, pattern, flags));
4892
692
        return read_string_impl(range, it, value);
4893
4.73k
    }
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIcNSI_11char_traitsIcEEEENSA_11regex_flagsERNSI_12basic_stringIT0_NSR_ISW_EENSI_9allocatorISW_EEEE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEENS9_11regex_flagsERNSG_12basic_stringIT0_NSP_ISU_EENSG_9allocatorISU_EEEE
_ZN3scn2v34impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEENS0_6detail11regex_flagsERNSF_12basic_stringIT0_NSO_ISU_EENSF_9allocatorISU_EEEE
Line
Count
Source
4890
316
    {
4891
316
        SCN_TRY(it, impl(range, pattern, flags));
4892
0
        return read_string_impl(range, it, value);
4893
316
    }
_ZN3scn2v34impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEENS0_6detail11regex_flagsERNSD_12basic_stringIT0_NSM_ISS_EENSD_9allocatorISS_EEEE
Line
Count
Source
4890
4.73k
    {
4891
4.73k
        SCN_TRY(it, impl(range, pattern, flags));
4892
692
        return read_string_impl(range, it, value);
4893
4.73k
    }
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIwNSI_11char_traitsIwEEEENSA_11regex_flagsERNSI_12basic_stringIT0_NSR_ISW_EENSI_9allocatorISW_EEEE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIwNSG_11char_traitsIwEEEENS9_11regex_flagsERNSG_12basic_stringIT0_NSP_ISU_EENSG_9allocatorISU_EEEE
_ZN3scn2v34impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIwNSF_11char_traitsIwEEEENS0_6detail11regex_flagsERNSF_12basic_stringIT0_NSO_ISU_EENSF_9allocatorISU_EEEE
Line
Count
Source
4890
6
    {
4891
6
        SCN_TRY(it, impl(range, pattern, flags));
4892
0
        return read_string_impl(range, it, value);
4893
6
    }
_ZN3scn2v34impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIwNSD_11char_traitsIwEEEENS0_6detail11regex_flagsERNSD_12basic_stringIT0_NSM_ISS_EENSD_9allocatorISS_EEEE
Line
Count
Source
4890
2.43k
    {
4891
2.43k
        SCN_TRY(it, impl(range, pattern, flags));
4892
530
        return read_string_impl(range, it, value);
4893
2.43k
    }
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIwNSI_11char_traitsIwEEEENSA_11regex_flagsERNSI_12basic_stringIT0_NSR_ISW_EENSI_9allocatorISW_EEEE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIwNSG_11char_traitsIwEEEENS9_11regex_flagsERNSG_12basic_stringIT0_NSP_ISU_EENSG_9allocatorISU_EEEE
_ZN3scn2v34impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIwNSF_11char_traitsIwEEEENS0_6detail11regex_flagsERNSF_12basic_stringIT0_NSO_ISU_EENSF_9allocatorISU_EEEE
Line
Count
Source
4890
6
    {
4891
6
        SCN_TRY(it, impl(range, pattern, flags));
4892
0
        return read_string_impl(range, it, value);
4893
6
    }
_ZN3scn2v34impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIwNSD_11char_traitsIwEEEENS0_6detail11regex_flagsERNSD_12basic_stringIT0_NSM_ISS_EENSD_9allocatorISS_EEEE
Line
Count
Source
4890
2.43k
    {
4891
2.43k
        SCN_TRY(it, impl(range, pattern, flags));
4892
530
        return read_string_impl(range, it, value);
4893
2.43k
    }
4894
4895
    template <typename Range, typename ValueCharT>
4896
    auto read(Range range,
4897
              std::basic_string_view<SourceCharT> pattern,
4898
              detail::regex_flags flags,
4899
              std::basic_string_view<ValueCharT>& value)
4900
        -> scan_expected<ranges::const_iterator_t<Range>>
4901
7.49k
    {
4902
7.49k
        SCN_TRY(it, impl(range, pattern, flags));
4903
1.22k
        return read_string_view_impl(range, it, value);
4904
7.49k
    }
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIcNSI_11char_traitsIcEEEENSA_11regex_flagsERNSQ_IT0_NSR_ISV_EEEE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEENS9_11regex_flagsERNSO_IT0_NSP_IST_EEEE
_ZN3scn2v34impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEENS0_6detail11regex_flagsERNSN_IT0_NSO_IST_EEEE
Line
Count
Source
4901
316
    {
4902
316
        SCN_TRY(it, impl(range, pattern, flags));
4903
0
        return read_string_view_impl(range, it, value);
4904
316
    }
_ZN3scn2v34impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEENS0_6detail11regex_flagsERNSL_IT0_NSM_ISR_EEEE
Line
Count
Source
4901
4.73k
    {
4902
4.73k
        SCN_TRY(it, impl(range, pattern, flags));
4903
692
        return read_string_view_impl(range, it, value);
4904
4.73k
    }
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIcNSI_11char_traitsIcEEEENSA_11regex_flagsERNSQ_IT0_NSR_ISV_EEEE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEENS9_11regex_flagsERNSO_IT0_NSP_IST_EEEE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEENS0_6detail11regex_flagsERNSN_IT0_NSO_IST_EEEE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEENS0_6detail11regex_flagsERNSL_IT0_NSM_ISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIwNSI_11char_traitsIwEEEENSA_11regex_flagsERNSQ_IT0_NSR_ISV_EEEE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIwNSG_11char_traitsIwEEEENS9_11regex_flagsERNSO_IT0_NSP_IST_EEEE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIwNSF_11char_traitsIwEEEENS0_6detail11regex_flagsERNSN_IT0_NSO_IST_EEEE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIwNSD_11char_traitsIwEEEENS0_6detail11regex_flagsERNSL_IT0_NSM_ISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIwNSI_11char_traitsIwEEEENSA_11regex_flagsERNSQ_IT0_NSR_ISV_EEEE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIwNSG_11char_traitsIwEEEENS9_11regex_flagsERNSO_IT0_NSP_IST_EEEE
_ZN3scn2v34impl24regex_string_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIwNSF_11char_traitsIwEEEENS0_6detail11regex_flagsERNSN_IT0_NSO_IST_EEEE
Line
Count
Source
4901
6
    {
4902
6
        SCN_TRY(it, impl(range, pattern, flags));
4903
0
        return read_string_view_impl(range, it, value);
4904
6
    }
_ZN3scn2v34impl24regex_string_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIwNSD_11char_traitsIwEEEENS0_6detail11regex_flagsERNSL_IT0_NSM_ISR_EEEE
Line
Count
Source
4901
2.43k
    {
4902
2.43k
        SCN_TRY(it, impl(range, pattern, flags));
4903
530
        return read_string_view_impl(range, it, value);
4904
2.43k
    }
4905
4906
private:
4907
    template <typename Range>
4908
    auto impl(Range range,
4909
              std::basic_string_view<SourceCharT> pattern,
4910
              detail::regex_flags flags)
4911
        -> scan_expected<ranges::const_iterator_t<Range>>
4912
22.4k
    {
4913
        if constexpr (!SCN_REGEX_SUPPORTS_WIDE_STRINGS &&
4914
                      !std::is_same_v<SourceCharT, char>) {
4915
            return unexpected_scan_error(
4916
                scan_error::invalid_scanned_value,
4917
                "Regex backend doesn't support wide strings as input");
4918
        }
4919
22.4k
        else {
4920
22.4k
            if (!is_entire_source_contiguous(range)) {
4921
966
                return unexpected_scan_error(
4922
966
                    scan_error::invalid_scanned_value,
4923
966
                    "Cannot use regex with a non-contiguous source "
4924
966
                    "range");
4925
966
            }
4926
4927
21.5k
            auto input = get_as_contiguous(range);
4928
21.5k
            SCN_TRY(it,
4929
3.66k
                    read_regex_string_impl<SourceCharT>(pattern, flags, input));
4930
3.66k
            return ranges::next(range.begin(),
4931
3.66k
                                ranges::distance(input.begin(), it));
4932
21.5k
        }
4933
22.4k
    }
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIcE4implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIcNSI_11char_traitsIcEEEENSA_11regex_flagsE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIcE4implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIcNSG_11char_traitsIcEEEENS9_11regex_flagsE
_ZN3scn2v34impl24regex_string_reader_implIcE4implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIcNSF_11char_traitsIcEEEENS0_6detail11regex_flagsE
Line
Count
Source
4912
948
    {
4913
        if constexpr (!SCN_REGEX_SUPPORTS_WIDE_STRINGS &&
4914
                      !std::is_same_v<SourceCharT, char>) {
4915
            return unexpected_scan_error(
4916
                scan_error::invalid_scanned_value,
4917
                "Regex backend doesn't support wide strings as input");
4918
        }
4919
948
        else {
4920
948
            if (!is_entire_source_contiguous(range)) {
4921
948
                return unexpected_scan_error(
4922
948
                    scan_error::invalid_scanned_value,
4923
948
                    "Cannot use regex with a non-contiguous source "
4924
948
                    "range");
4925
948
            }
4926
4927
0
            auto input = get_as_contiguous(range);
4928
0
            SCN_TRY(it,
4929
0
                    read_regex_string_impl<SourceCharT>(pattern, flags, input));
4930
0
            return ranges::next(range.begin(),
4931
0
                                ranges::distance(input.begin(), it));
4932
0
        }
4933
948
    }
_ZN3scn2v34impl24regex_string_reader_implIcE4implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIcNSD_11char_traitsIcEEEENS0_6detail11regex_flagsE
Line
Count
Source
4912
14.2k
    {
4913
        if constexpr (!SCN_REGEX_SUPPORTS_WIDE_STRINGS &&
4914
                      !std::is_same_v<SourceCharT, char>) {
4915
            return unexpected_scan_error(
4916
                scan_error::invalid_scanned_value,
4917
                "Regex backend doesn't support wide strings as input");
4918
        }
4919
14.2k
        else {
4920
14.2k
            if (!is_entire_source_contiguous(range)) {
4921
0
                return unexpected_scan_error(
4922
0
                    scan_error::invalid_scanned_value,
4923
0
                    "Cannot use regex with a non-contiguous source "
4924
0
                    "range");
4925
0
            }
4926
4927
14.2k
            auto input = get_as_contiguous(range);
4928
14.2k
            SCN_TRY(it,
4929
2.07k
                    read_regex_string_impl<SourceCharT>(pattern, flags, input));
4930
2.07k
            return ranges::next(range.begin(),
4931
2.07k
                                ranges::distance(input.begin(), it));
4932
14.2k
        }
4933
14.2k
    }
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIwE4implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSI_17basic_string_viewIwNSI_11char_traitsIwEEEENSA_11regex_flagsE
Unexecuted instantiation: _ZN3scn2v34impl24regex_string_reader_implIwE4implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NSG_17basic_string_viewIwNSG_11char_traitsIwEEEENS9_11regex_flagsE
_ZN3scn2v34impl24regex_string_reader_implIwE4implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NSF_17basic_string_viewIwNSF_11char_traitsIwEEEENS0_6detail11regex_flagsE
Line
Count
Source
4912
18
    {
4913
        if constexpr (!SCN_REGEX_SUPPORTS_WIDE_STRINGS &&
4914
                      !std::is_same_v<SourceCharT, char>) {
4915
            return unexpected_scan_error(
4916
                scan_error::invalid_scanned_value,
4917
                "Regex backend doesn't support wide strings as input");
4918
        }
4919
18
        else {
4920
18
            if (!is_entire_source_contiguous(range)) {
4921
18
                return unexpected_scan_error(
4922
18
                    scan_error::invalid_scanned_value,
4923
18
                    "Cannot use regex with a non-contiguous source "
4924
18
                    "range");
4925
18
            }
4926
4927
0
            auto input = get_as_contiguous(range);
4928
0
            SCN_TRY(it,
4929
0
                    read_regex_string_impl<SourceCharT>(pattern, flags, input));
4930
0
            return ranges::next(range.begin(),
4931
0
                                ranges::distance(input.begin(), it));
4932
0
        }
4933
18
    }
_ZN3scn2v34impl24regex_string_reader_implIwE4implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NSD_17basic_string_viewIwNSD_11char_traitsIwEEEENS0_6detail11regex_flagsE
Line
Count
Source
4912
7.30k
    {
4913
        if constexpr (!SCN_REGEX_SUPPORTS_WIDE_STRINGS &&
4914
                      !std::is_same_v<SourceCharT, char>) {
4915
            return unexpected_scan_error(
4916
                scan_error::invalid_scanned_value,
4917
                "Regex backend doesn't support wide strings as input");
4918
        }
4919
7.30k
        else {
4920
7.30k
            if (!is_entire_source_contiguous(range)) {
4921
0
                return unexpected_scan_error(
4922
0
                    scan_error::invalid_scanned_value,
4923
0
                    "Cannot use regex with a non-contiguous source "
4924
0
                    "range");
4925
0
            }
4926
4927
7.30k
            auto input = get_as_contiguous(range);
4928
7.30k
            SCN_TRY(it,
4929
1.59k
                    read_regex_string_impl<SourceCharT>(pattern, flags, input));
4930
1.59k
            return ranges::next(range.begin(),
4931
1.59k
                                ranges::distance(input.begin(), it));
4932
7.30k
        }
4933
7.30k
    }
4934
};
4935
#endif
4936
4937
template <typename SourceCharT>
4938
class character_reader_impl {
4939
public:
4940
    // Note: no localized version,
4941
    // since it's equivalent in behavior
4942
4943
    template <typename Range, typename ValueCharT>
4944
    auto read(Range range, std::basic_string<ValueCharT>& value)
4945
        -> scan_expected<ranges::const_iterator_t<Range>>
4946
96
    {
4947
96
        return read_impl(
4948
96
            range,
4949
96
            [&](const auto& rng) {
4950
96
                return read_string_impl(rng, read_all(rng), value);
4951
96
            },
Unexecuted instantiation: _ZZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEEENKUlRKSK_E_clISG_EEDaSZ_
_ZZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEEENKUlRKSH_E_clISD_EEDaSW_
Line
Count
Source
4949
32
            [&](const auto& rng) {
4950
32
                return read_string_impl(rng, read_all(rng), value);
4951
32
            },
Unexecuted instantiation: _ZZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEEENKUlRKSK_E_clISG_EEDaSZ_
_ZZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEEENKUlRKSH_E_clISD_EEDaSW_
Line
Count
Source
4949
32
            [&](const auto& rng) {
4950
32
                return read_string_impl(rng, read_all(rng), value);
4951
32
            },
Unexecuted instantiation: _ZZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEEENKUlRKSK_E_clISG_EEDaSZ_
_ZZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEEENKUlRKSH_E_clISD_EEDaSW_
Line
Count
Source
4949
16
            [&](const auto& rng) {
4950
16
                return read_string_impl(rng, read_all(rng), value);
4951
16
            },
Unexecuted instantiation: _ZZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEEENKUlRKSK_E_clISG_EEDaSZ_
_ZZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEEENKUlRKSH_E_clISD_EEDaSW_
Line
Count
Source
4949
16
            [&](const auto& rng) {
4950
16
                return read_string_impl(rng, read_all(rng), value);
4951
16
            },
4952
96
            detail::priority_tag<1>{});
4953
96
    }
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4946
32
    {
4947
32
        return read_impl(
4948
32
            range,
4949
32
            [&](const auto& rng) {
4950
32
                return read_string_impl(rng, read_all(rng), value);
4951
32
            },
4952
32
            detail::priority_tag<1>{});
4953
32
    }
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4946
32
    {
4947
32
        return read_impl(
4948
32
            range,
4949
32
            [&](const auto& rng) {
4950
32
                return read_string_impl(rng, read_all(rng), value);
4951
32
            },
4952
32
            detail::priority_tag<1>{});
4953
32
    }
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4946
16
    {
4947
16
        return read_impl(
4948
16
            range,
4949
16
            [&](const auto& rng) {
4950
16
                return read_string_impl(rng, read_all(rng), value);
4951
16
            },
4952
16
            detail::priority_tag<1>{});
4953
16
    }
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_12basic_stringIT0_NSI_11char_traitsISR_EENSI_9allocatorISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEE
_ZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_12basic_stringIT0_NSF_11char_traitsISO_EENSF_9allocatorISO_EEEE
Line
Count
Source
4946
16
    {
4947
16
        return read_impl(
4948
16
            range,
4949
16
            [&](const auto& rng) {
4950
16
                return read_string_impl(rng, read_all(rng), value);
4951
16
            },
4952
16
            detail::priority_tag<1>{});
4953
16
    }
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_12basic_stringIT0_NSD_11char_traitsISM_EENSD_9allocatorISM_EEEE
4954
4955
    template <typename Range, typename ValueCharT>
4956
    auto read(Range range, std::basic_string_view<ValueCharT>& value)
4957
        -> scan_expected<ranges::const_iterator_t<Range>>
4958
48
    {
4959
48
        return read_impl(
4960
48
            range,
4961
48
            [&](const auto& rng) {
4962
48
                return read_string_view_impl(rng, read_all(rng), value);
4963
48
            },
Unexecuted instantiation: _ZZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEEENKUlRKSK_E_clISG_EEDaSX_
_ZZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEEENKUlRKSH_E_clISD_EEDaSU_
Line
Count
Source
4961
32
            [&](const auto& rng) {
4962
32
                return read_string_view_impl(rng, read_all(rng), value);
4963
32
            },
Unexecuted instantiation: _ZZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEEENKUlRKSK_E_clISG_EEDaSX_
Unexecuted instantiation: _ZZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEEENKUlRKSH_E_clISD_EEDaSU_
Unexecuted instantiation: _ZZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEEENKUlRKSK_E_clISG_EEDaSX_
Unexecuted instantiation: _ZZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEEENKUlRKSH_E_clISD_EEDaSU_
Unexecuted instantiation: _ZZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEEENKUlRKSK_E_clISG_EEDaSX_
_ZZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEEENKUlRKSH_E_clISD_EEDaSU_
Line
Count
Source
4961
16
            [&](const auto& rng) {
4962
16
                return read_string_view_impl(rng, read_all(rng), value);
4963
16
            },
4964
48
            detail::priority_tag<1>{});
4965
48
    }
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
_ZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Line
Count
Source
4958
32
    {
4959
32
        return read_impl(
4960
32
            range,
4961
32
            [&](const auto& rng) {
4962
32
                return read_string_view_impl(rng, read_all(rng), value);
4963
32
            },
4964
32
            detail::priority_tag<1>{});
4965
32
    }
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RNSI_17basic_string_viewIT0_NSI_11char_traitsISR_EEEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEE
_ZN3scn2v34impl21character_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RNSF_17basic_string_viewIT0_NSF_11char_traitsISO_EEEE
Line
Count
Source
4958
16
    {
4959
16
        return read_impl(
4960
16
            range,
4961
16
            [&](const auto& rng) {
4962
16
                return read_string_view_impl(rng, read_all(rng), value);
4963
16
            },
4964
16
            detail::priority_tag<1>{});
4965
16
    }
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RNSD_17basic_string_viewIT0_NSD_11char_traitsISM_EEEE
4966
4967
private:
4968
    template <typename View, typename ReadCb>
4969
    static auto read_impl(const take_width_view<View>& range,
4970
                          ReadCb&& read_cb,
4971
                          detail::priority_tag<1>)
4972
        -> scan_expected<ranges::const_iterator_t<take_width_view<View>&>>
4973
144
    {
4974
144
        return read_cb(range);
4975
144
    }
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_12basic_stringIT0_NSJ_11char_traitsISS_EENSJ_9allocatorISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS12_OSS_NS9_12priority_tagILm1EEE
_ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readINS1_15take_width_viewISB_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSZ_OSP_NS0_6detail12priority_tagILm1EEE
Line
Count
Source
4973
32
    {
4974
32
        return read_cb(range);
4975
32
    }
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_12basic_stringIT0_NSJ_11char_traitsISS_EENSJ_9allocatorISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS12_OSS_NS9_12priority_tagILm1EEE
_ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readINS1_15take_width_viewISB_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSZ_OSP_NS0_6detail12priority_tagILm1EEE
Line
Count
Source
4973
32
    {
4974
32
        return read_cb(range);
4975
32
    }
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_17basic_string_viewIT0_NSJ_11char_traitsISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS10_OSS_NS9_12priority_tagILm1EEE
_ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readINS1_15take_width_viewISB_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSX_OSP_NS0_6detail12priority_tagILm1EEE
Line
Count
Source
4973
32
    {
4974
32
        return read_cb(range);
4975
32
    }
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_17basic_string_viewIT0_NSJ_11char_traitsISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS10_OSS_NS9_12priority_tagILm1EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readINS1_15take_width_viewISB_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSX_OSP_NS0_6detail12priority_tagILm1EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_12basic_stringIT0_NSJ_11char_traitsISS_EENSJ_9allocatorISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS12_OSS_NS9_12priority_tagILm1EEE
_ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readINS1_15take_width_viewISB_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSZ_OSP_NS0_6detail12priority_tagILm1EEE
Line
Count
Source
4973
16
    {
4974
16
        return read_cb(range);
4975
16
    }
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_12basic_stringIT0_NSJ_11char_traitsISS_EENSJ_9allocatorISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS12_OSS_NS9_12priority_tagILm1EEE
_ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readINS1_15take_width_viewISB_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_12basic_stringIT0_NSG_11char_traitsISP_EENSG_9allocatorISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSZ_OSP_NS0_6detail12priority_tagILm1EEE
Line
Count
Source
4973
16
    {
4974
16
        return read_cb(range);
4975
16
    }
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_17basic_string_viewIT0_NSJ_11char_traitsISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS10_OSS_NS9_12priority_tagILm1EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readINS1_15take_width_viewISB_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSX_OSP_NS0_6detail12priority_tagILm1EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readINS1_15take_width_viewISE_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESL_RNSJ_17basic_string_viewIT0_NSJ_11char_traitsISS_EEEEEUlRKSL_E_EENSI_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSK_IRNSG_ISL_EEE4typeEEEEEEERKS10_OSS_NS9_12priority_tagILm1EEE
_ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readINS1_15take_width_viewISB_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RNSG_17basic_string_viewIT0_NSG_11char_traitsISP_EEEEEUlRKSI_E_EENSF_IDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSH_IRNSD_ISI_EEE4typeEEEEEEERKSX_OSP_NS0_6detail12priority_tagILm1EEE
Line
Count
Source
4973
16
    {
4974
16
        return read_cb(range);
4975
16
    }
4976
4977
    template <typename Range, typename ReadCb>
4978
    static auto read_impl(Range, ReadCb&&, detail::priority_tag<0>)
4979
        -> scan_expected<ranges::const_iterator_t<Range>>
4980
0
    {
4981
0
        return unexpected_scan_error(
4982
0
            scan_error::invalid_scanned_value,
4983
0
            "character_reader requires take_width_view");
4984
0
    }
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_12basic_stringIT0_NSH_11char_traitsISQ_EENSH_9allocatorISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readISB_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_12basic_stringIT0_NSE_11char_traitsISN_EENSE_9allocatorISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_12basic_stringIT0_NSH_11char_traitsISQ_EENSH_9allocatorISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readISB_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_12basic_stringIT0_NSE_11char_traitsISN_EENSE_9allocatorISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_17basic_string_viewIT0_NSH_11char_traitsISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readISB_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_17basic_string_viewIT0_NSE_11char_traitsISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_17basic_string_viewIT0_NSH_11char_traitsISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEZNS3_4readISB_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_17basic_string_viewIT0_NSE_11char_traitsISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_12basic_stringIT0_NSH_11char_traitsISQ_EENSH_9allocatorISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readISB_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_12basic_stringIT0_NSE_11char_traitsISN_EENSE_9allocatorISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_12basic_stringIT0_NSH_11char_traitsISQ_EENSH_9allocatorISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readISB_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_12basic_stringIT0_NSE_11char_traitsISN_EENSE_9allocatorISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_17basic_string_viewIT0_NSH_11char_traitsISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readISB_cEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_17basic_string_viewIT0_NSE_11char_traitsISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEZNS3_4readISE_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_RNSH_17basic_string_viewIT0_NSH_11char_traitsISQ_EEEEEUlRKSJ_E_EESO_SJ_OSQ_NS9_12priority_tagILm0EEE
Unexecuted instantiation: _ZN3scn2v34impl21character_reader_implIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEZNS3_4readISB_wEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_RNSE_17basic_string_viewIT0_NSE_11char_traitsISN_EEEEEUlRKSG_E_EESL_SG_OSN_NS0_6detail12priority_tagILm0EEE
4985
};
4986
4987
struct nonascii_specs_handler {
4988
    void on_charset_single(char32_t cp)
4989
506k
    {
4990
506k
        on_charset_range(cp, cp + 1);
4991
506k
    }
4992
4993
    void on_charset_range(char32_t begin, char32_t end)
4994
509k
    {
4995
509k
        if (end <= 127) {
4996
272k
            return;
4997
272k
        }
4998
4999
41.1M
        for (auto& elem : extra_ranges) {
5000
            // TODO: check for overlap
5001
41.1M
            if (elem.first == end) {
5002
954
                elem.first = begin;
5003
954
                return;
5004
954
            }
5005
5006
41.1M
            if (elem.second == begin) {
5007
1.97k
                elem.second = end;
5008
1.97k
                return;
5009
1.97k
            }
5010
41.1M
        }
5011
5012
234k
        extra_ranges.push_back(std::make_pair(begin, end));
5013
234k
    }
5014
5015
    constexpr void on_charset_inverted() const
5016
552
    {
5017
        // no-op
5018
552
    }
5019
5020
    constexpr void on_error(const char* msg)
5021
0
    {
5022
0
        on_error(scan_error{scan_error::invalid_format_string, msg});
5023
0
    }
5024
    constexpr void on_error(scan_error e)
5025
0
    {
5026
0
        SCN_UNLIKELY_ATTR
5027
0
        err = e;
5028
0
    }
5029
5030
    constexpr explicit operator bool() const
5031
516k
    {
5032
516k
        return static_cast<bool>(err);
5033
516k
    }
5034
5035
    std::vector<std::pair<char32_t, char32_t>> extra_ranges;
5036
    scan_error err;
5037
};
5038
5039
template <typename SourceCharT>
5040
class character_set_reader_impl {
5041
public:
5042
    template <typename Range, typename ValueCharT>
5043
    auto read(Range range,
5044
              const detail::format_specs& specs,
5045
              std::basic_string<ValueCharT>& value)
5046
        -> scan_expected<ranges::const_iterator_t<Range>>
5047
2.83k
    {
5048
2.83k
        auto it = read_source_impl(range, {specs});
5049
2.83k
        if (SCN_UNLIKELY(!it)) {
5050
768
            return unexpected(it.error());
5051
768
        }
5052
5053
2.06k
        return read_string_impl(range, *it, value);
5054
2.83k
    }
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v34impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
5047
222
    {
5048
222
        auto it = read_source_impl(range, {specs});
5049
222
        if (SCN_UNLIKELY(!it)) {
5050
12
            return unexpected(it.error());
5051
12
        }
5052
5053
210
        return read_string_impl(range, *it, value);
5054
222
    }
_ZN3scn2v34impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
5047
998
    {
5048
998
        auto it = read_source_impl(range, {specs});
5049
998
        if (SCN_UNLIKELY(!it)) {
5050
344
            return unexpected(it.error());
5051
344
        }
5052
5053
654
        return read_string_impl(range, *it, value);
5054
998
    }
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v34impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
5047
222
    {
5048
222
        auto it = read_source_impl(range, {specs});
5049
222
        if (SCN_UNLIKELY(!it)) {
5050
12
            return unexpected(it.error());
5051
12
        }
5052
5053
210
        return read_string_impl(range, *it, value);
5054
222
    }
_ZN3scn2v34impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
5047
998
    {
5048
998
        auto it = read_source_impl(range, {specs});
5049
998
        if (SCN_UNLIKELY(!it)) {
5050
344
            return unexpected(it.error());
5051
344
        }
5052
5053
654
        return read_string_impl(range, *it, value);
5054
998
    }
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v34impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
5047
66
    {
5048
66
        auto it = read_source_impl(range, {specs});
5049
66
        if (SCN_UNLIKELY(!it)) {
5050
10
            return unexpected(it.error());
5051
10
        }
5052
5053
56
        return read_string_impl(range, *it, value);
5054
66
    }
_ZN3scn2v34impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
5047
130
    {
5048
130
        auto it = read_source_impl(range, {specs});
5049
130
        if (SCN_UNLIKELY(!it)) {
5050
18
            return unexpected(it.error());
5051
18
        }
5052
5053
112
        return read_string_impl(range, *it, value);
5054
130
    }
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_12basic_stringIT0_NSI_11char_traitsISU_EENSI_9allocatorISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_12basic_stringIT0_NSG_11char_traitsISS_EENSG_9allocatorISS_EEEE
_ZN3scn2v34impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_12basic_stringIT0_NSF_11char_traitsISS_EENSF_9allocatorISS_EEEE
Line
Count
Source
5047
66
    {
5048
66
        auto it = read_source_impl(range, {specs});
5049
66
        if (SCN_UNLIKELY(!it)) {
5050
10
            return unexpected(it.error());
5051
10
        }
5052
5053
56
        return read_string_impl(range, *it, value);
5054
66
    }
_ZN3scn2v34impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_12basic_stringIT0_NSD_11char_traitsISQ_EENSD_9allocatorISQ_EEEE
Line
Count
Source
5047
130
    {
5048
130
        auto it = read_source_impl(range, {specs});
5049
130
        if (SCN_UNLIKELY(!it)) {
5050
18
            return unexpected(it.error());
5051
18
        }
5052
5053
112
        return read_string_impl(range, *it, value);
5054
130
    }
5055
5056
    template <typename Range, typename ValueCharT>
5057
    auto read(Range range,
5058
              const detail::format_specs& specs,
5059
              std::basic_string_view<ValueCharT>& value)
5060
        -> scan_expected<ranges::const_iterator_t<Range>>
5061
1.41k
    {
5062
1.41k
        auto it = read_source_impl(range, {specs});
5063
1.41k
        if (SCN_UNLIKELY(!it)) {
5064
384
            return unexpected(it.error());
5065
384
        }
5066
5067
1.03k
        return read_string_view_impl(range, *it, value);
5068
1.41k
    }
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
_ZN3scn2v34impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Line
Count
Source
5061
222
    {
5062
222
        auto it = read_source_impl(range, {specs});
5063
222
        if (SCN_UNLIKELY(!it)) {
5064
12
            return unexpected(it.error());
5065
12
        }
5066
5067
210
        return read_string_view_impl(range, *it, value);
5068
222
    }
_ZN3scn2v34impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Line
Count
Source
5061
998
    {
5062
998
        auto it = read_source_impl(range, {specs});
5063
998
        if (SCN_UNLIKELY(!it)) {
5064
344
            return unexpected(it.error());
5065
344
        }
5066
5067
654
        return read_string_view_impl(range, *it, value);
5068
998
    }
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEcEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEcEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERNSI_17basic_string_viewIT0_NSI_11char_traitsISU_EEEE
Unexecuted instantiation: _ZN3scn2v34impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERNSG_17basic_string_viewIT0_NSG_11char_traitsISS_EEEE
_ZN3scn2v34impl25character_set_reader_implIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEwEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERNSF_17basic_string_viewIT0_NSF_11char_traitsISS_EEEE
Line
Count
Source
5061
66
    {
5062
66
        auto it = read_source_impl(range, {specs});
5063
66
        if (SCN_UNLIKELY(!it)) {
5064
10
            return unexpected(it.error());
5065
10
        }
5066
5067
56
        return read_string_view_impl(range, *it, value);
5068
66
    }
_ZN3scn2v34impl25character_set_reader_implIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEwEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERNSD_17basic_string_viewIT0_NSD_11char_traitsISQ_EEEE
Line
Count
Source
5061
130
    {
5062
130
        auto it = read_source_impl(range, {specs});
5063
130
        if (SCN_UNLIKELY(!it)) {
5064
18
            return unexpected(it.error());
5065
18
        }
5066
5067
112
        return read_string_view_impl(range, *it, value);
5068
130
    }
5069
5070
private:
5071
    struct specs_helper {
5072
4.24k
        constexpr specs_helper(const detail::format_specs& s) : specs(s) {}
scn::v3::impl::character_set_reader_impl<char>::specs_helper::specs_helper(scn::v3::detail::format_specs const&)
Line
Count
Source
5072
3.66k
        constexpr specs_helper(const detail::format_specs& s) : specs(s) {}
scn::v3::impl::character_set_reader_impl<wchar_t>::specs_helper::specs_helper(scn::v3::detail::format_specs const&)
Line
Count
Source
5072
588
        constexpr specs_helper(const detail::format_specs& s) : specs(s) {}
5073
5074
        constexpr bool is_char_set_in_literals(char ch) const
5075
346k
        {
5076
346k
            SCN_EXPECT(is_ascii_char(ch));
5077
346k
            const auto val =
5078
346k
                static_cast<unsigned>(static_cast<unsigned char>(ch));
5079
346k
            return (static_cast<unsigned>(specs.charset_literals[val / 8]) >>
5080
346k
                    (val % 8)) &
5081
346k
                   1u;
5082
346k
        }
scn::v3::impl::character_set_reader_impl<char>::specs_helper::is_char_set_in_literals(char) const
Line
Count
Source
5075
341k
        {
5076
341k
            SCN_EXPECT(is_ascii_char(ch));
5077
341k
            const auto val =
5078
341k
                static_cast<unsigned>(static_cast<unsigned char>(ch));
5079
341k
            return (static_cast<unsigned>(specs.charset_literals[val / 8]) >>
5080
341k
                    (val % 8)) &
5081
341k
                   1u;
5082
341k
        }
scn::v3::impl::character_set_reader_impl<wchar_t>::specs_helper::is_char_set_in_literals(char) const
Line
Count
Source
5075
4.95k
        {
5076
4.95k
            SCN_EXPECT(is_ascii_char(ch));
5077
4.95k
            const auto val =
5078
4.95k
                static_cast<unsigned>(static_cast<unsigned char>(ch));
5079
4.95k
            return (static_cast<unsigned>(specs.charset_literals[val / 8]) >>
5080
4.95k
                    (val % 8)) &
5081
4.95k
                   1u;
5082
4.95k
        }
5083
5084
        bool is_char_set_in_extra_literals(char32_t cp) const
5085
53.0k
        {
5086
            // TODO: binary search?
5087
53.0k
            if (nonascii.extra_ranges.empty()) {
5088
0
                return false;
5089
0
            }
5090
5091
53.0k
            const auto cp_val = static_cast<uint32_t>(cp);
5092
53.0k
            return std::find_if(
5093
53.0k
                       nonascii.extra_ranges.begin(),
5094
53.0k
                       nonascii.extra_ranges.end(),
5095
11.0M
                       [cp_val](const auto& pair) noexcept {
5096
11.0M
                           return static_cast<uint32_t>(pair.first) <= cp_val &&
5097
11.0M
                                  static_cast<uint32_t>(pair.second) > cp_val;
5098
11.0M
                       }) != nonascii.extra_ranges.end();
auto scn::v3::impl::character_set_reader_impl<char>::specs_helper::is_char_set_in_extra_literals(char32_t) const::{lambda(auto:1 const&)#1}::operator()<std::__1::pair<char32_t, char32_t> >(std::__1::pair<char32_t, char32_t> const&) const
Line
Count
Source
5095
11.0M
                       [cp_val](const auto& pair) noexcept {
5096
11.0M
                           return static_cast<uint32_t>(pair.first) <= cp_val &&
5097
11.0M
                                  static_cast<uint32_t>(pair.second) > cp_val;
5098
11.0M
                       }) != nonascii.extra_ranges.end();
auto scn::v3::impl::character_set_reader_impl<wchar_t>::specs_helper::is_char_set_in_extra_literals(char32_t) const::{lambda(auto:1 const&)#1}::operator()<std::__1::pair<char32_t, char32_t> >(std::__1::pair<char32_t, char32_t> const&) const
Line
Count
Source
5095
15.0k
                       [cp_val](const auto& pair) noexcept {
5096
15.0k
                           return static_cast<uint32_t>(pair.first) <= cp_val &&
5097
15.0k
                                  static_cast<uint32_t>(pair.second) > cp_val;
5098
15.0k
                       }) != nonascii.extra_ranges.end();
5099
53.0k
        }
scn::v3::impl::character_set_reader_impl<char>::specs_helper::is_char_set_in_extra_literals(char32_t) const
Line
Count
Source
5085
51.6k
        {
5086
            // TODO: binary search?
5087
51.6k
            if (nonascii.extra_ranges.empty()) {
5088
0
                return false;
5089
0
            }
5090
5091
51.6k
            const auto cp_val = static_cast<uint32_t>(cp);
5092
51.6k
            return std::find_if(
5093
51.6k
                       nonascii.extra_ranges.begin(),
5094
51.6k
                       nonascii.extra_ranges.end(),
5095
51.6k
                       [cp_val](const auto& pair) noexcept {
5096
51.6k
                           return static_cast<uint32_t>(pair.first) <= cp_val &&
5097
51.6k
                                  static_cast<uint32_t>(pair.second) > cp_val;
5098
51.6k
                       }) != nonascii.extra_ranges.end();
5099
51.6k
        }
scn::v3::impl::character_set_reader_impl<wchar_t>::specs_helper::is_char_set_in_extra_literals(char32_t) const
Line
Count
Source
5085
1.44k
        {
5086
            // TODO: binary search?
5087
1.44k
            if (nonascii.extra_ranges.empty()) {
5088
0
                return false;
5089
0
            }
5090
5091
1.44k
            const auto cp_val = static_cast<uint32_t>(cp);
5092
1.44k
            return std::find_if(
5093
1.44k
                       nonascii.extra_ranges.begin(),
5094
1.44k
                       nonascii.extra_ranges.end(),
5095
1.44k
                       [cp_val](const auto& pair) noexcept {
5096
1.44k
                           return static_cast<uint32_t>(pair.first) <= cp_val &&
5097
1.44k
                                  static_cast<uint32_t>(pair.second) > cp_val;
5098
1.44k
                       }) != nonascii.extra_ranges.end();
5099
1.44k
        }
5100
5101
        scan_error handle_nonascii()
5102
4.24k
        {
5103
4.24k
            if (!specs.charset_has_nonascii) {
5104
744
                return {};
5105
744
            }
5106
5107
3.50k
            auto charset_string = specs.charset_string<SourceCharT>();
5108
3.50k
            auto it = detail::to_address(charset_string.begin());
5109
3.50k
            auto set = detail::parse_presentation_set(
5110
3.50k
                it, detail::to_address(charset_string.end()), nonascii);
5111
3.50k
            if (SCN_UNLIKELY(!nonascii)) {
5112
0
                return nonascii.err;
5113
0
            }
5114
3.50k
            SCN_ENSURE(it == detail::to_address(charset_string.end()));
5115
3.50k
            SCN_ENSURE(set == charset_string);
5116
5117
3.50k
            std::sort(nonascii.extra_ranges.begin(),
5118
3.50k
                      nonascii.extra_ranges.end());
5119
3.50k
            return {};
5120
3.50k
        }
scn::v3::impl::character_set_reader_impl<char>::specs_helper::handle_nonascii()
Line
Count
Source
5102
3.66k
        {
5103
3.66k
            if (!specs.charset_has_nonascii) {
5104
582
                return {};
5105
582
            }
5106
5107
3.07k
            auto charset_string = specs.charset_string<SourceCharT>();
5108
3.07k
            auto it = detail::to_address(charset_string.begin());
5109
3.07k
            auto set = detail::parse_presentation_set(
5110
3.07k
                it, detail::to_address(charset_string.end()), nonascii);
5111
3.07k
            if (SCN_UNLIKELY(!nonascii)) {
5112
0
                return nonascii.err;
5113
0
            }
5114
3.07k
            SCN_ENSURE(it == detail::to_address(charset_string.end()));
5115
3.07k
            SCN_ENSURE(set == charset_string);
5116
5117
3.07k
            std::sort(nonascii.extra_ranges.begin(),
5118
3.07k
                      nonascii.extra_ranges.end());
5119
3.07k
            return {};
5120
3.07k
        }
scn::v3::impl::character_set_reader_impl<wchar_t>::specs_helper::handle_nonascii()
Line
Count
Source
5102
588
        {
5103
588
            if (!specs.charset_has_nonascii) {
5104
162
                return {};
5105
162
            }
5106
5107
426
            auto charset_string = specs.charset_string<SourceCharT>();
5108
426
            auto it = detail::to_address(charset_string.begin());
5109
426
            auto set = detail::parse_presentation_set(
5110
426
                it, detail::to_address(charset_string.end()), nonascii);
5111
426
            if (SCN_UNLIKELY(!nonascii)) {
5112
0
                return nonascii.err;
5113
0
            }
5114
426
            SCN_ENSURE(it == detail::to_address(charset_string.end()));
5115
426
            SCN_ENSURE(set == charset_string);
5116
5117
426
            std::sort(nonascii.extra_ranges.begin(),
5118
426
                      nonascii.extra_ranges.end());
5119
426
            return {};
5120
426
        }
5121
5122
        const detail::format_specs& specs;
5123
        nonascii_specs_handler nonascii;
5124
    };
5125
5126
    struct read_source_callback {
5127
        SCN_NODISCARD bool on_ascii_only(SourceCharT ch) const
5128
10.8k
        {
5129
10.8k
            if (!is_ascii_char(ch)) {
5130
2.16k
                return false;
5131
2.16k
            }
5132
5133
8.71k
            return helper.is_char_set_in_literals(static_cast<char>(ch));
5134
10.8k
        }
scn::v3::impl::character_set_reader_impl<char>::read_source_callback::on_ascii_only(char) const
Line
Count
Source
5128
9.43k
        {
5129
9.43k
            if (!is_ascii_char(ch)) {
5130
2.15k
                return false;
5131
2.15k
            }
5132
5133
7.28k
            return helper.is_char_set_in_literals(static_cast<char>(ch));
5134
9.43k
        }
scn::v3::impl::character_set_reader_impl<wchar_t>::read_source_callback::on_ascii_only(wchar_t) const
Line
Count
Source
5128
1.44k
        {
5129
1.44k
            if (!is_ascii_char(ch)) {
5130
12
                return false;
5131
12
            }
5132
5133
1.42k
            return helper.is_char_set_in_literals(static_cast<char>(ch));
5134
1.44k
        }
5135
5136
        SCN_NODISCARD bool on_classic_with_extra_ranges(char32_t cp) const
5137
391k
        {
5138
391k
            if (!is_ascii_char(cp)) {
5139
53.0k
                return helper.is_char_set_in_extra_literals(cp);
5140
53.0k
            }
5141
5142
337k
            return helper.is_char_set_in_literals(static_cast<char>(cp));
5143
391k
        }
scn::v3::impl::character_set_reader_impl<char>::read_source_callback::on_classic_with_extra_ranges(char32_t) const
Line
Count
Source
5137
386k
        {
5138
386k
            if (!is_ascii_char(cp)) {
5139
51.6k
                return helper.is_char_set_in_extra_literals(cp);
5140
51.6k
            }
5141
5142
334k
            return helper.is_char_set_in_literals(static_cast<char>(cp));
5143
386k
        }
scn::v3::impl::character_set_reader_impl<wchar_t>::read_source_callback::on_classic_with_extra_ranges(char32_t) const
Line
Count
Source
5137
4.97k
        {
5138
4.97k
            if (!is_ascii_char(cp)) {
5139
1.44k
                return helper.is_char_set_in_extra_literals(cp);
5140
1.44k
            }
5141
5142
3.52k
            return helper.is_char_set_in_literals(static_cast<char>(cp));
5143
4.97k
        }
5144
5145
        const specs_helper& helper;
5146
        detail::locale_ref loc{};
5147
    };
5148
5149
    template <typename Range>
5150
    auto read_source_impl(Range range, specs_helper helper) const
5151
        -> scan_expected<ranges::const_iterator_t<Range>>
5152
4.24k
    {
5153
4.24k
        const bool is_inverted = helper.specs.charset_is_inverted;
5154
4.24k
        const bool accepts_nonascii = helper.specs.charset_has_nonascii;
5155
5156
4.24k
        if (auto e = helper.handle_nonascii(); SCN_UNLIKELY(!e)) {
5157
0
            return unexpected(e);
5158
0
        }
5159
5160
4.24k
        read_source_callback cb_wrapper{helper};
5161
5162
4.24k
        if (accepts_nonascii) {
5163
391k
            const auto cb = [&](char32_t cp) {
5164
391k
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5165
391k
            };
Unexecuted instantiation: _ZZNK3scn2v34impl25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS3_12specs_helperEENKUlDiE_clEDi
Unexecuted instantiation: _ZZNK3scn2v34impl25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS3_12specs_helperEENKUlDiE_clEDi
_ZZNK3scn2v34impl25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS3_12specs_helperEENKUlDiE_clEDi
Line
Count
Source
5163
15.1k
            const auto cb = [&](char32_t cp) {
5164
15.1k
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5165
15.1k
            };
_ZZNK3scn2v34impl25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS3_12specs_helperEENKUlDiE_clEDi
Line
Count
Source
5163
370k
            const auto cb = [&](char32_t cp) {
5164
370k
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5165
370k
            };
Unexecuted instantiation: _ZZNK3scn2v34impl25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS3_12specs_helperEENKUlDiE_clEDi
Unexecuted instantiation: _ZZNK3scn2v34impl25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS3_12specs_helperEENKUlDiE_clEDi
_ZZNK3scn2v34impl25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS3_12specs_helperEENKUlDiE_clEDi
Line
Count
Source
5163
678
            const auto cb = [&](char32_t cp) {
5164
678
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5165
678
            };
_ZZNK3scn2v34impl25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS3_12specs_helperEENKUlDiE_clEDi
Line
Count
Source
5163
4.29k
            const auto cb = [&](char32_t cp) {
5164
4.29k
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5165
4.29k
            };
5166
5167
3.50k
            if (is_inverted) {
5168
552
                auto it = read_until_code_point(range, cb);
5169
552
                return check_nonempty(it, range);
5170
552
            }
5171
2.95k
            auto it = read_while_code_point(range, cb);
5172
2.95k
            return check_nonempty(it, range);
5173
3.50k
        }
5174
5175
10.8k
        const auto cb = [&](SourceCharT ch) {
5176
10.8k
            return cb_wrapper.on_ascii_only(ch);
5177
10.8k
        };
Unexecuted instantiation: _ZZNK3scn2v34impl25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS3_12specs_helperEENKUlcE_clEc
Unexecuted instantiation: _ZZNK3scn2v34impl25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS3_12specs_helperEENKUlcE_clEc
_ZZNK3scn2v34impl25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS3_12specs_helperEENKUlcE_clEc
Line
Count
Source
5175
5.95k
        const auto cb = [&](SourceCharT ch) {
5176
5.95k
            return cb_wrapper.on_ascii_only(ch);
5177
5.95k
        };
_ZZNK3scn2v34impl25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS3_12specs_helperEENKUlcE_clEc
Line
Count
Source
5175
3.48k
        const auto cb = [&](SourceCharT ch) {
5176
3.48k
            return cb_wrapper.on_ascii_only(ch);
5177
3.48k
        };
Unexecuted instantiation: _ZZNK3scn2v34impl25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS3_12specs_helperEENKUlwE_clEw
Unexecuted instantiation: _ZZNK3scn2v34impl25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS3_12specs_helperEENKUlwE_clEw
_ZZNK3scn2v34impl25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS3_12specs_helperEENKUlwE_clEw
Line
Count
Source
5175
168
        const auto cb = [&](SourceCharT ch) {
5176
168
            return cb_wrapper.on_ascii_only(ch);
5177
168
        };
_ZZNK3scn2v34impl25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS3_12specs_helperEENKUlwE_clEw
Line
Count
Source
5175
1.27k
        const auto cb = [&](SourceCharT ch) {
5176
1.27k
            return cb_wrapper.on_ascii_only(ch);
5177
1.27k
        };
5178
5179
744
        if (is_inverted) {
5180
348
            auto it = read_until_code_unit(range, cb);
5181
348
            return check_nonempty(it, range);
5182
348
        }
5183
396
        auto it = read_while_code_unit(range, cb);
5184
396
        return check_nonempty(it, range);
5185
744
    }
Unexecuted instantiation: _ZNK3scn2v34impl25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS3_12specs_helperE
Unexecuted instantiation: _ZNK3scn2v34impl25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS3_12specs_helperE
_ZNK3scn2v34impl25character_set_reader_implIcE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS3_12specs_helperE
Line
Count
Source
5152
666
    {
5153
666
        const bool is_inverted = helper.specs.charset_is_inverted;
5154
666
        const bool accepts_nonascii = helper.specs.charset_has_nonascii;
5155
5156
666
        if (auto e = helper.handle_nonascii(); SCN_UNLIKELY(!e)) {
5157
0
            return unexpected(e);
5158
0
        }
5159
5160
666
        read_source_callback cb_wrapper{helper};
5161
5162
666
        if (accepts_nonascii) {
5163
360
            const auto cb = [&](char32_t cp) {
5164
360
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5165
360
            };
5166
5167
360
            if (is_inverted) {
5168
132
                auto it = read_until_code_point(range, cb);
5169
132
                return check_nonempty(it, range);
5170
132
            }
5171
228
            auto it = read_while_code_point(range, cb);
5172
228
            return check_nonempty(it, range);
5173
360
        }
5174
5175
306
        const auto cb = [&](SourceCharT ch) {
5176
306
            return cb_wrapper.on_ascii_only(ch);
5177
306
        };
5178
5179
306
        if (is_inverted) {
5180
150
            auto it = read_until_code_unit(range, cb);
5181
150
            return check_nonempty(it, range);
5182
150
        }
5183
156
        auto it = read_while_code_unit(range, cb);
5184
156
        return check_nonempty(it, range);
5185
306
    }
_ZNK3scn2v34impl25character_set_reader_implIcE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS3_12specs_helperE
Line
Count
Source
5152
2.99k
    {
5153
2.99k
        const bool is_inverted = helper.specs.charset_is_inverted;
5154
2.99k
        const bool accepts_nonascii = helper.specs.charset_has_nonascii;
5155
5156
2.99k
        if (auto e = helper.handle_nonascii(); SCN_UNLIKELY(!e)) {
5157
0
            return unexpected(e);
5158
0
        }
5159
5160
2.99k
        read_source_callback cb_wrapper{helper};
5161
5162
2.99k
        if (accepts_nonascii) {
5163
2.71k
            const auto cb = [&](char32_t cp) {
5164
2.71k
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5165
2.71k
            };
5166
5167
2.71k
            if (is_inverted) {
5168
204
                auto it = read_until_code_point(range, cb);
5169
204
                return check_nonempty(it, range);
5170
204
            }
5171
2.51k
            auto it = read_while_code_point(range, cb);
5172
2.51k
            return check_nonempty(it, range);
5173
2.71k
        }
5174
5175
276
        const auto cb = [&](SourceCharT ch) {
5176
276
            return cb_wrapper.on_ascii_only(ch);
5177
276
        };
5178
5179
276
        if (is_inverted) {
5180
120
            auto it = read_until_code_unit(range, cb);
5181
120
            return check_nonempty(it, range);
5182
120
        }
5183
156
        auto it = read_while_code_unit(range, cb);
5184
156
        return check_nonempty(it, range);
5185
276
    }
Unexecuted instantiation: _ZNK3scn2v34impl25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NS3_12specs_helperE
Unexecuted instantiation: _ZNK3scn2v34impl25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS3_12specs_helperE
_ZNK3scn2v34impl25character_set_reader_implIwE16read_source_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS3_12specs_helperE
Line
Count
Source
5152
198
    {
5153
198
        const bool is_inverted = helper.specs.charset_is_inverted;
5154
198
        const bool accepts_nonascii = helper.specs.charset_has_nonascii;
5155
5156
198
        if (auto e = helper.handle_nonascii(); SCN_UNLIKELY(!e)) {
5157
0
            return unexpected(e);
5158
0
        }
5159
5160
198
        read_source_callback cb_wrapper{helper};
5161
5162
198
        if (accepts_nonascii) {
5163
132
            const auto cb = [&](char32_t cp) {
5164
132
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5165
132
            };
5166
5167
132
            if (is_inverted) {
5168
102
                auto it = read_until_code_point(range, cb);
5169
102
                return check_nonempty(it, range);
5170
102
            }
5171
30
            auto it = read_while_code_point(range, cb);
5172
30
            return check_nonempty(it, range);
5173
132
        }
5174
5175
66
        const auto cb = [&](SourceCharT ch) {
5176
66
            return cb_wrapper.on_ascii_only(ch);
5177
66
        };
5178
5179
66
        if (is_inverted) {
5180
36
            auto it = read_until_code_unit(range, cb);
5181
36
            return check_nonempty(it, range);
5182
36
        }
5183
30
        auto it = read_while_code_unit(range, cb);
5184
30
        return check_nonempty(it, range);
5185
66
    }
_ZNK3scn2v34impl25character_set_reader_implIwE16read_source_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS3_12specs_helperE
Line
Count
Source
5152
390
    {
5153
390
        const bool is_inverted = helper.specs.charset_is_inverted;
5154
390
        const bool accepts_nonascii = helper.specs.charset_has_nonascii;
5155
5156
390
        if (auto e = helper.handle_nonascii(); SCN_UNLIKELY(!e)) {
5157
0
            return unexpected(e);
5158
0
        }
5159
5160
390
        read_source_callback cb_wrapper{helper};
5161
5162
390
        if (accepts_nonascii) {
5163
294
            const auto cb = [&](char32_t cp) {
5164
294
                return cb_wrapper.on_classic_with_extra_ranges(cp);
5165
294
            };
5166
5167
294
            if (is_inverted) {
5168
114
                auto it = read_until_code_point(range, cb);
5169
114
                return check_nonempty(it, range);
5170
114
            }
5171
180
            auto it = read_while_code_point(range, cb);
5172
180
            return check_nonempty(it, range);
5173
294
        }
5174
5175
96
        const auto cb = [&](SourceCharT ch) {
5176
96
            return cb_wrapper.on_ascii_only(ch);
5177
96
        };
5178
5179
96
        if (is_inverted) {
5180
42
            auto it = read_until_code_unit(range, cb);
5181
42
            return check_nonempty(it, range);
5182
42
        }
5183
54
        auto it = read_while_code_unit(range, cb);
5184
54
        return check_nonempty(it, range);
5185
96
    }
5186
5187
    template <typename Iterator, typename Range>
5188
    static scan_expected<Iterator> check_nonempty(const Iterator& it,
5189
                                                  Range range)
5190
4.24k
    {
5191
4.24k
        if (it == range.begin()) {
5192
1.15k
            return unexpected_scan_error(
5193
1.15k
                scan_error::invalid_scanned_value,
5194
1.15k
                "No characters matched in [character set]");
5195
1.15k
        }
5196
5197
3.09k
        return it;
5198
4.24k
    }
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > scn::v3::impl::character_set_reader_impl<char>::check_nonempty<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::character_set_reader_impl<char>::check_nonempty<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::detail::basic_scan_buffer<char>::forward_iterator const&, scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<char>::forward_iterator, scn::v3::ranges::default_sentinel_t>)
scn::v3::scan_expected<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> > scn::v3::impl::character_set_reader_impl<char>::check_nonempty<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<char const*, char const*> const&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >)
Line
Count
Source
5190
666
    {
5191
666
        if (it == range.begin()) {
5192
36
            return unexpected_scan_error(
5193
36
                scan_error::invalid_scanned_value,
5194
36
                "No characters matched in [character set]");
5195
36
        }
5196
5197
630
        return it;
5198
666
    }
scn::v3::scan_expected<char const*> scn::v3::impl::character_set_reader_impl<char>::check_nonempty<char const*, scn::v3::ranges::detail::subrange_::subrange<char const*, char const*> >(char const* const&, scn::v3::ranges::detail::subrange_::subrange<char const*, char const*>)
Line
Count
Source
5190
2.99k
    {
5191
2.99k
        if (it == range.begin()) {
5192
1.03k
            return unexpected_scan_error(
5193
1.03k
                scan_error::invalid_scanned_value,
5194
1.03k
                "No characters matched in [character set]");
5195
1.03k
        }
5196
5197
1.96k
        return it;
5198
2.99k
    }
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > scn::v3::impl::character_set_reader_impl<wchar_t>::check_nonempty<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> const&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::character_set_reader_impl<wchar_t>::check_nonempty<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t> >(scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator const&, scn::v3::ranges::detail::subrange_::subrange<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator, scn::v3::ranges::default_sentinel_t>)
scn::v3::scan_expected<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> > scn::v3::impl::character_set_reader_impl<wchar_t>::check_nonempty<scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*>, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> > >(scn::v3::impl::counted_width_iterator_impl::counted_width_iterator<wchar_t const*, wchar_t const*> const&, scn::v3::impl::take_width_view<scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >)
Line
Count
Source
5190
198
    {
5191
198
        if (it == range.begin()) {
5192
30
            return unexpected_scan_error(
5193
30
                scan_error::invalid_scanned_value,
5194
30
                "No characters matched in [character set]");
5195
30
        }
5196
5197
168
        return it;
5198
198
    }
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::character_set_reader_impl<wchar_t>::check_nonempty<wchar_t const*, scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*> >(wchar_t const* const&, scn::v3::ranges::detail::subrange_::subrange<wchar_t const*, wchar_t const*>)
Line
Count
Source
5190
390
    {
5191
390
        if (it == range.begin()) {
5192
54
            return unexpected_scan_error(
5193
54
                scan_error::invalid_scanned_value,
5194
54
                "No characters matched in [character set]");
5195
54
        }
5196
5197
336
        return it;
5198
390
    }
5199
};
5200
5201
template <typename SourceCharT>
5202
class string_reader
5203
    : public reader_base<string_reader<SourceCharT>, SourceCharT> {
5204
public:
5205
72.3k
    constexpr string_reader() = default;
scn::v3::impl::string_reader<char>::string_reader()
Line
Count
Source
5205
23.2k
    constexpr string_reader() = default;
scn::v3::impl::string_reader<wchar_t>::string_reader()
Line
Count
Source
5205
49.0k
    constexpr string_reader() = default;
5206
5207
    void check_specs_impl(const detail::format_specs& specs,
5208
                          reader_error_handler& eh)
5209
31.1k
    {
5210
31.1k
        detail::check_string_type_specs(specs, eh);
5211
5212
31.1k
        SCN_GCC_PUSH
5213
31.1k
        SCN_GCC_IGNORE("-Wswitch")
5214
31.1k
        SCN_GCC_IGNORE("-Wswitch-default")
5215
5216
31.1k
        SCN_CLANG_PUSH
5217
31.1k
        SCN_CLANG_IGNORE("-Wswitch")
5218
31.1k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5219
5220
31.1k
        switch (specs.type) {
5221
2.85k
            case detail::presentation_type::none:
5222
2.85k
                m_type = reader_type::word;
5223
2.85k
                break;
5224
5225
804
            case detail::presentation_type::string: {
5226
804
                if (specs.align == detail::align_type::left ||
5227
804
                    specs.align == detail::align_type::center) {
5228
534
                    m_type = reader_type::custom_word;
5229
534
                }
5230
270
                else {
5231
270
                    m_type = reader_type::word;
5232
270
                }
5233
804
                break;
5234
0
            }
5235
5236
156
            case detail::presentation_type::character:
5237
156
                m_type = reader_type::character;
5238
156
                break;
5239
5240
4.25k
            case detail::presentation_type::string_set:
5241
4.25k
                m_type = reader_type::character_set;
5242
4.25k
                break;
5243
5244
20.1k
            case detail::presentation_type::regex:
5245
20.1k
                m_type = reader_type::regex;
5246
20.1k
                break;
5247
5248
2.38k
            case detail::presentation_type::regex_escaped:
5249
2.38k
                m_type = reader_type::regex_escaped;
5250
2.38k
                break;
5251
31.1k
        }
5252
5253
        SCN_CLANG_POP    // -Wswitch-enum, -Wcovered-switch-default
5254
            SCN_GCC_POP  // -Wswitch-enum, -Wswitch-default
5255
31.1k
    }
scn::v3::impl::string_reader<char>::check_specs_impl(scn::v3::detail::format_specs const&, scn::v3::impl::reader_error_handler&)
Line
Count
Source
5209
21.3k
    {
5210
21.3k
        detail::check_string_type_specs(specs, eh);
5211
5212
21.3k
        SCN_GCC_PUSH
5213
21.3k
        SCN_GCC_IGNORE("-Wswitch")
5214
21.3k
        SCN_GCC_IGNORE("-Wswitch-default")
5215
5216
21.3k
        SCN_CLANG_PUSH
5217
21.3k
        SCN_CLANG_IGNORE("-Wswitch")
5218
21.3k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5219
5220
21.3k
        switch (specs.type) {
5221
1.51k
            case detail::presentation_type::none:
5222
1.51k
                m_type = reader_type::word;
5223
1.51k
                break;
5224
5225
582
            case detail::presentation_type::string: {
5226
582
                if (specs.align == detail::align_type::left ||
5227
582
                    specs.align == detail::align_type::center) {
5228
360
                    m_type = reader_type::custom_word;
5229
360
                }
5230
222
                else {
5231
222
                    m_type = reader_type::word;
5232
222
                }
5233
582
                break;
5234
0
            }
5235
5236
102
            case detail::presentation_type::character:
5237
102
                m_type = reader_type::character;
5238
102
                break;
5239
5240
3.66k
            case detail::presentation_type::string_set:
5241
3.66k
                m_type = reader_type::character_set;
5242
3.66k
                break;
5243
5244
13.0k
            case detail::presentation_type::regex:
5245
13.0k
                m_type = reader_type::regex;
5246
13.0k
                break;
5247
5248
2.12k
            case detail::presentation_type::regex_escaped:
5249
2.12k
                m_type = reader_type::regex_escaped;
5250
2.12k
                break;
5251
21.3k
        }
5252
5253
        SCN_CLANG_POP    // -Wswitch-enum, -Wcovered-switch-default
5254
            SCN_GCC_POP  // -Wswitch-enum, -Wswitch-default
5255
21.3k
    }
scn::v3::impl::string_reader<wchar_t>::check_specs_impl(scn::v3::detail::format_specs const&, scn::v3::impl::reader_error_handler&)
Line
Count
Source
5209
9.75k
    {
5210
9.75k
        detail::check_string_type_specs(specs, eh);
5211
5212
9.75k
        SCN_GCC_PUSH
5213
9.75k
        SCN_GCC_IGNORE("-Wswitch")
5214
9.75k
        SCN_GCC_IGNORE("-Wswitch-default")
5215
5216
9.75k
        SCN_CLANG_PUSH
5217
9.75k
        SCN_CLANG_IGNORE("-Wswitch")
5218
9.75k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5219
5220
9.75k
        switch (specs.type) {
5221
1.33k
            case detail::presentation_type::none:
5222
1.33k
                m_type = reader_type::word;
5223
1.33k
                break;
5224
5225
222
            case detail::presentation_type::string: {
5226
222
                if (specs.align == detail::align_type::left ||
5227
222
                    specs.align == detail::align_type::center) {
5228
174
                    m_type = reader_type::custom_word;
5229
174
                }
5230
48
                else {
5231
48
                    m_type = reader_type::word;
5232
48
                }
5233
222
                break;
5234
0
            }
5235
5236
54
            case detail::presentation_type::character:
5237
54
                m_type = reader_type::character;
5238
54
                break;
5239
5240
588
            case detail::presentation_type::string_set:
5241
588
                m_type = reader_type::character_set;
5242
588
                break;
5243
5244
7.07k
            case detail::presentation_type::regex:
5245
7.07k
                m_type = reader_type::regex;
5246
7.07k
                break;
5247
5248
258
            case detail::presentation_type::regex_escaped:
5249
258
                m_type = reader_type::regex_escaped;
5250
258
                break;
5251
9.75k
        }
5252
5253
        SCN_CLANG_POP    // -Wswitch-enum, -Wcovered-switch-default
5254
            SCN_GCC_POP  // -Wswitch-enum, -Wswitch-default
5255
9.75k
    }
5256
5257
    bool skip_ws_before_read() const
5258
77.8k
    {
5259
77.8k
        return m_type == reader_type::word;
5260
77.8k
    }
scn::v3::impl::string_reader<char>::skip_ws_before_read() const
Line
Count
Source
5258
27.2k
    {
5259
27.2k
        return m_type == reader_type::word;
5260
27.2k
    }
scn::v3::impl::string_reader<wchar_t>::skip_ws_before_read() const
Line
Count
Source
5258
50.6k
    {
5259
50.6k
        return m_type == reader_type::word;
5260
50.6k
    }
5261
5262
    template <typename Range, typename Value>
5263
    auto read_default(Range range, Value& value, detail::locale_ref loc)
5264
        -> scan_expected<ranges::const_iterator_t<Range>>
5265
41.1k
    {
5266
41.1k
        SCN_UNUSED(loc);
5267
41.1k
        return word_reader_impl<SourceCharT>{}.read(range, value);
5268
41.1k
    }
_ZN3scn2v34impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refE
Line
Count
Source
5265
634
    {
5266
634
        SCN_UNUSED(loc);
5267
634
        return word_reader_impl<SourceCharT>{}.read(range, value);
5268
634
    }
_ZN3scn2v34impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__112basic_stringIcNSC_11char_traitsIcEENSC_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RT0_NS0_6detail10locale_refE
Line
Count
Source
5265
634
    {
5266
634
        SCN_UNUSED(loc);
5267
634
        return word_reader_impl<SourceCharT>{}.read(range, value);
5268
634
    }
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refE
_ZN3scn2v34impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__112basic_stringIwNSC_11char_traitsIwEENSC_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RT0_NS0_6detail10locale_refE
Line
Count
Source
5265
634
    {
5266
634
        SCN_UNUSED(loc);
5267
634
        return word_reader_impl<SourceCharT>{}.read(range, value);
5268
634
    }
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIcNSF_11char_traitsIcEENSF_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIwNSF_11char_traitsIwEENSF_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refE
_ZN3scn2v34impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__112basic_stringIcNSC_11char_traitsIcEENSC_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RT0_NS0_6detail10locale_refE
Line
Count
Source
5265
13.0k
    {
5266
13.0k
        SCN_UNUSED(loc);
5267
13.0k
        return word_reader_impl<SourceCharT>{}.read(range, value);
5268
13.0k
    }
_ZN3scn2v34impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RT0_NS0_6detail10locale_refE
Line
Count
Source
5265
13.0k
    {
5266
13.0k
        SCN_UNUSED(loc);
5267
13.0k
        return word_reader_impl<SourceCharT>{}.read(range, value);
5268
13.0k
    }
_ZN3scn2v34impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__112basic_stringIwNSC_11char_traitsIwEENSC_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RT0_NS0_6detail10locale_refE
Line
Count
Source
5265
13.0k
    {
5266
13.0k
        SCN_UNUSED(loc);
5267
13.0k
        return word_reader_impl<SourceCharT>{}.read(range, value);
5268
13.0k
    }
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIcNSF_11char_traitsIcEENSF_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIwNSF_11char_traitsIwEENSF_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RT0_NS9_10locale_refE
5269
5270
    template <typename Range, typename Value>
5271
    auto read_specs(Range range,
5272
                    const detail::format_specs& specs,
5273
                    Value& value,
5274
                    detail::locale_ref loc)
5275
        -> scan_expected<ranges::const_iterator_t<Range>>
5276
30.4k
    {
5277
30.4k
        SCN_UNUSED(loc);
5278
30.4k
        return read_impl(range, specs, value);
5279
30.4k
    }
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIcNSH_11char_traitsIcEENSH_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIcNSF_11char_traitsIcEENSF_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v34impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__112basic_stringIcNSE_11char_traitsIcEENSE_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_NST_10locale_refE
Line
Count
Source
5276
878
    {
5277
878
        SCN_UNUSED(loc);
5278
878
        return read_impl(range, specs, value);
5279
878
    }
_ZN3scn2v34impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__112basic_stringIcNSC_11char_traitsIcEENSC_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Line
Count
Source
5276
6.10k
    {
5277
6.10k
        SCN_UNUSED(loc);
5278
6.10k
        return read_impl(range, specs, value);
5279
6.10k
    }
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIwNSH_11char_traitsIwEENSH_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIwNSF_11char_traitsIwEENSF_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v34impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__112basic_stringIwNSE_11char_traitsIwEENSE_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_NST_10locale_refE
Line
Count
Source
5276
878
    {
5277
878
        SCN_UNUSED(loc);
5278
878
        return read_impl(range, specs, value);
5279
878
    }
_ZN3scn2v34impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__112basic_stringIwNSC_11char_traitsIwEENSC_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Line
Count
Source
5276
6.10k
    {
5277
6.10k
        SCN_UNUSED(loc);
5278
6.10k
        return read_impl(range, specs, value);
5279
6.10k
    }
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIcNSH_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v34impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__117basic_string_viewIcNSE_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Line
Count
Source
5276
878
    {
5277
878
        SCN_UNUSED(loc);
5278
878
        return read_impl(range, specs, value);
5279
878
    }
_ZN3scn2v34impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refE
Line
Count
Source
5276
6.10k
    {
5277
6.10k
        SCN_UNUSED(loc);
5278
6.10k
        return read_impl(range, specs, value);
5279
6.10k
    }
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIwNSH_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__117basic_string_viewIwNSE_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIcNSH_11char_traitsIcEENSH_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIcNSF_11char_traitsIcEENSF_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v34impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__112basic_stringIcNSE_11char_traitsIcEENSE_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_NST_10locale_refE
Line
Count
Source
5276
232
    {
5277
232
        SCN_UNUSED(loc);
5278
232
        return read_impl(range, specs, value);
5279
232
    }
_ZN3scn2v34impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__112basic_stringIcNSC_11char_traitsIcEENSC_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Line
Count
Source
5276
2.93k
    {
5277
2.93k
        SCN_UNUSED(loc);
5278
2.93k
        return read_impl(range, specs, value);
5279
2.93k
    }
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIwNSH_11char_traitsIwEENSH_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIwNSF_11char_traitsIwEENSF_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v34impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__112basic_stringIwNSE_11char_traitsIwEENSE_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_NST_10locale_refE
Line
Count
Source
5276
232
    {
5277
232
        SCN_UNUSED(loc);
5278
232
        return read_impl(range, specs, value);
5279
232
    }
_ZN3scn2v34impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__112basic_stringIwNSC_11char_traitsIwEENSC_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Line
Count
Source
5276
2.93k
    {
5277
2.93k
        SCN_UNUSED(loc);
5278
2.93k
        return read_impl(range, specs, value);
5279
2.93k
    }
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIcNSH_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_NS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__117basic_string_viewIcNSE_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIwNSH_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_NSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_NS9_10locale_refE
_ZN3scn2v34impl13string_readerIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__117basic_string_viewIwNSE_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_NSR_10locale_refE
Line
Count
Source
5276
232
    {
5277
232
        SCN_UNUSED(loc);
5278
232
        return read_impl(range, specs, value);
5279
232
    }
_ZN3scn2v34impl13string_readerIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_NSP_10locale_refE
Line
Count
Source
5276
2.93k
    {
5277
2.93k
        SCN_UNUSED(loc);
5278
2.93k
        return read_impl(range, specs, value);
5279
2.93k
    }
5280
5281
protected:
5282
    enum class reader_type {
5283
        word,
5284
        custom_word,
5285
        character,
5286
        character_set,
5287
        regex,
5288
        regex_escaped,
5289
    };
5290
5291
    template <typename Range, typename Value>
5292
    auto read_impl(Range range, const detail::format_specs& specs, Value& value)
5293
        -> scan_expected<ranges::const_iterator_t<Range>>
5294
30.4k
    {
5295
30.4k
        SCN_CLANG_PUSH
5296
30.4k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5297
5298
30.4k
        switch (m_type) {
5299
3.04k
            case reader_type::word:
5300
3.04k
                return word_reader_impl<SourceCharT>{}.read(range, value);
5301
5302
528
            case reader_type::custom_word:
5303
528
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5304
528
                                                                   value);
5305
5306
144
            case reader_type::character:
5307
144
                return character_reader_impl<SourceCharT>{}.read(range, value);
5308
5309
4.24k
            case reader_type::character_set:
5310
4.24k
                return character_set_reader_impl<SourceCharT>{}.read(
5311
4.24k
                    range, specs, value);
5312
5313
0
#if !SCN_DISABLE_REGEX
5314
20.1k
            case reader_type::regex:
5315
20.1k
                return regex_string_reader_impl<SourceCharT>{}.read(
5316
20.1k
                    range, specs.charset_string<SourceCharT>(),
5317
20.1k
                    specs.regexp_flags, value);
5318
5319
2.38k
            case reader_type::regex_escaped:
5320
2.38k
                return regex_string_reader_impl<SourceCharT>{}.read(
5321
2.38k
                    range,
5322
2.38k
                    get_unescaped_regex_pattern(
5323
2.38k
                        specs.charset_string<SourceCharT>()),
5324
2.38k
                    specs.regexp_flags, value);
5325
0
#endif
5326
5327
0
            default:
5328
0
                SCN_EXPECT(false);
5329
30.4k
                SCN_UNREACHABLE;
5330
30.4k
        }
5331
5332
30.4k
        SCN_CLANG_POP
5333
30.4k
    }
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIcNSH_11char_traitsIcEENSH_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIcNSF_11char_traitsIcEENSF_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_
_ZN3scn2v34impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__112basic_stringIcNSE_11char_traitsIcEENSE_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5294
878
    {
5295
878
        SCN_CLANG_PUSH
5296
878
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5297
5298
878
        switch (m_type) {
5299
244
            case reader_type::word:
5300
244
                return word_reader_impl<SourceCharT>{}.read(range, value);
5301
5302
64
            case reader_type::custom_word:
5303
64
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5304
64
                                                                   value);
5305
5306
32
            case reader_type::character:
5307
32
                return character_reader_impl<SourceCharT>{}.read(range, value);
5308
5309
222
            case reader_type::character_set:
5310
222
                return character_set_reader_impl<SourceCharT>{}.read(
5311
222
                    range, specs, value);
5312
5313
0
#if !SCN_DISABLE_REGEX
5314
2
            case reader_type::regex:
5315
2
                return regex_string_reader_impl<SourceCharT>{}.read(
5316
2
                    range, specs.charset_string<SourceCharT>(),
5317
2
                    specs.regexp_flags, value);
5318
5319
314
            case reader_type::regex_escaped:
5320
314
                return regex_string_reader_impl<SourceCharT>{}.read(
5321
314
                    range,
5322
314
                    get_unescaped_regex_pattern(
5323
314
                        specs.charset_string<SourceCharT>()),
5324
314
                    specs.regexp_flags, value);
5325
0
#endif
5326
5327
0
            default:
5328
0
                SCN_EXPECT(false);
5329
878
                SCN_UNREACHABLE;
5330
878
        }
5331
5332
878
        SCN_CLANG_POP
5333
878
    }
_ZN3scn2v34impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__112basic_stringIcNSC_11char_traitsIcEENSC_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5294
6.10k
    {
5295
6.10k
        SCN_CLANG_PUSH
5296
6.10k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5297
5298
6.10k
        switch (m_type) {
5299
312
            case reader_type::word:
5300
312
                return word_reader_impl<SourceCharT>{}.read(range, value);
5301
5302
56
            case reader_type::custom_word:
5303
56
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5304
56
                                                                   value);
5305
5306
0
            case reader_type::character:
5307
0
                return character_reader_impl<SourceCharT>{}.read(range, value);
5308
5309
998
            case reader_type::character_set:
5310
998
                return character_set_reader_impl<SourceCharT>{}.read(
5311
998
                    range, specs, value);
5312
5313
0
#if !SCN_DISABLE_REGEX
5314
4.34k
            case reader_type::regex:
5315
4.34k
                return regex_string_reader_impl<SourceCharT>{}.read(
5316
4.34k
                    range, specs.charset_string<SourceCharT>(),
5317
4.34k
                    specs.regexp_flags, value);
5318
5319
394
            case reader_type::regex_escaped:
5320
394
                return regex_string_reader_impl<SourceCharT>{}.read(
5321
394
                    range,
5322
394
                    get_unescaped_regex_pattern(
5323
394
                        specs.charset_string<SourceCharT>()),
5324
394
                    specs.regexp_flags, value);
5325
0
#endif
5326
5327
0
            default:
5328
0
                SCN_EXPECT(false);
5329
6.10k
                SCN_UNREACHABLE;
5330
6.10k
        }
5331
5332
6.10k
        SCN_CLANG_POP
5333
6.10k
    }
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIwNSH_11char_traitsIwEENSH_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIwNSF_11char_traitsIwEENSF_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_
_ZN3scn2v34impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__112basic_stringIwNSE_11char_traitsIwEENSE_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5294
878
    {
5295
878
        SCN_CLANG_PUSH
5296
878
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5297
5298
878
        switch (m_type) {
5299
244
            case reader_type::word:
5300
244
                return word_reader_impl<SourceCharT>{}.read(range, value);
5301
5302
64
            case reader_type::custom_word:
5303
64
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5304
64
                                                                   value);
5305
5306
32
            case reader_type::character:
5307
32
                return character_reader_impl<SourceCharT>{}.read(range, value);
5308
5309
222
            case reader_type::character_set:
5310
222
                return character_set_reader_impl<SourceCharT>{}.read(
5311
222
                    range, specs, value);
5312
5313
0
#if !SCN_DISABLE_REGEX
5314
2
            case reader_type::regex:
5315
2
                return regex_string_reader_impl<SourceCharT>{}.read(
5316
2
                    range, specs.charset_string<SourceCharT>(),
5317
2
                    specs.regexp_flags, value);
5318
5319
314
            case reader_type::regex_escaped:
5320
314
                return regex_string_reader_impl<SourceCharT>{}.read(
5321
314
                    range,
5322
314
                    get_unescaped_regex_pattern(
5323
314
                        specs.charset_string<SourceCharT>()),
5324
314
                    specs.regexp_flags, value);
5325
0
#endif
5326
5327
0
            default:
5328
0
                SCN_EXPECT(false);
5329
878
                SCN_UNREACHABLE;
5330
878
        }
5331
5332
878
        SCN_CLANG_POP
5333
878
    }
_ZN3scn2v34impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__112basic_stringIwNSC_11char_traitsIwEENSC_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5294
6.10k
    {
5295
6.10k
        SCN_CLANG_PUSH
5296
6.10k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5297
5298
6.10k
        switch (m_type) {
5299
312
            case reader_type::word:
5300
312
                return word_reader_impl<SourceCharT>{}.read(range, value);
5301
5302
56
            case reader_type::custom_word:
5303
56
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5304
56
                                                                   value);
5305
5306
0
            case reader_type::character:
5307
0
                return character_reader_impl<SourceCharT>{}.read(range, value);
5308
5309
998
            case reader_type::character_set:
5310
998
                return character_set_reader_impl<SourceCharT>{}.read(
5311
998
                    range, specs, value);
5312
5313
0
#if !SCN_DISABLE_REGEX
5314
4.34k
            case reader_type::regex:
5315
4.34k
                return regex_string_reader_impl<SourceCharT>{}.read(
5316
4.34k
                    range, specs.charset_string<SourceCharT>(),
5317
4.34k
                    specs.regexp_flags, value);
5318
5319
394
            case reader_type::regex_escaped:
5320
394
                return regex_string_reader_impl<SourceCharT>{}.read(
5321
394
                    range,
5322
394
                    get_unescaped_regex_pattern(
5323
394
                        specs.charset_string<SourceCharT>()),
5324
394
                    specs.regexp_flags, value);
5325
0
#endif
5326
5327
0
            default:
5328
0
                SCN_EXPECT(false);
5329
6.10k
                SCN_UNREACHABLE;
5330
6.10k
        }
5331
5332
6.10k
        SCN_CLANG_POP
5333
6.10k
    }
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIcNSH_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_
_ZN3scn2v34impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__117basic_string_viewIcNSE_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5294
878
    {
5295
878
        SCN_CLANG_PUSH
5296
878
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5297
5298
878
        switch (m_type) {
5299
244
            case reader_type::word:
5300
244
                return word_reader_impl<SourceCharT>{}.read(range, value);
5301
5302
64
            case reader_type::custom_word:
5303
64
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5304
64
                                                                   value);
5305
5306
32
            case reader_type::character:
5307
32
                return character_reader_impl<SourceCharT>{}.read(range, value);
5308
5309
222
            case reader_type::character_set:
5310
222
                return character_set_reader_impl<SourceCharT>{}.read(
5311
222
                    range, specs, value);
5312
5313
0
#if !SCN_DISABLE_REGEX
5314
2
            case reader_type::regex:
5315
2
                return regex_string_reader_impl<SourceCharT>{}.read(
5316
2
                    range, specs.charset_string<SourceCharT>(),
5317
2
                    specs.regexp_flags, value);
5318
5319
314
            case reader_type::regex_escaped:
5320
314
                return regex_string_reader_impl<SourceCharT>{}.read(
5321
314
                    range,
5322
314
                    get_unescaped_regex_pattern(
5323
314
                        specs.charset_string<SourceCharT>()),
5324
314
                    specs.regexp_flags, value);
5325
0
#endif
5326
5327
0
            default:
5328
0
                SCN_EXPECT(false);
5329
878
                SCN_UNREACHABLE;
5330
878
        }
5331
5332
878
        SCN_CLANG_POP
5333
878
    }
_ZN3scn2v34impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5294
6.10k
    {
5295
6.10k
        SCN_CLANG_PUSH
5296
6.10k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5297
5298
6.10k
        switch (m_type) {
5299
312
            case reader_type::word:
5300
312
                return word_reader_impl<SourceCharT>{}.read(range, value);
5301
5302
56
            case reader_type::custom_word:
5303
56
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5304
56
                                                                   value);
5305
5306
0
            case reader_type::character:
5307
0
                return character_reader_impl<SourceCharT>{}.read(range, value);
5308
5309
998
            case reader_type::character_set:
5310
998
                return character_set_reader_impl<SourceCharT>{}.read(
5311
998
                    range, specs, value);
5312
5313
0
#if !SCN_DISABLE_REGEX
5314
4.34k
            case reader_type::regex:
5315
4.34k
                return regex_string_reader_impl<SourceCharT>{}.read(
5316
4.34k
                    range, specs.charset_string<SourceCharT>(),
5317
4.34k
                    specs.regexp_flags, value);
5318
5319
394
            case reader_type::regex_escaped:
5320
394
                return regex_string_reader_impl<SourceCharT>{}.read(
5321
394
                    range,
5322
394
                    get_unescaped_regex_pattern(
5323
394
                        specs.charset_string<SourceCharT>()),
5324
394
                    specs.regexp_flags, value);
5325
0
#endif
5326
5327
0
            default:
5328
0
                SCN_EXPECT(false);
5329
6.10k
                SCN_UNREACHABLE;
5330
6.10k
        }
5331
5332
6.10k
        SCN_CLANG_POP
5333
6.10k
    }
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIwNSH_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEENSt3__117basic_string_viewIwNSE_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIcE9read_implINS0_6ranges6detail9subrange_8subrangeIPKcSA_EENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIcNSH_11char_traitsIcEENSH_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIcNSF_11char_traitsIcEENSF_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_
_ZN3scn2v34impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__112basic_stringIcNSE_11char_traitsIcEENSE_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5294
232
    {
5295
232
        SCN_CLANG_PUSH
5296
232
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5297
5298
232
        switch (m_type) {
5299
124
            case reader_type::word:
5300
124
                return word_reader_impl<SourceCharT>{}.read(range, value);
5301
5302
20
            case reader_type::custom_word:
5303
20
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5304
20
                                                                   value);
5305
5306
16
            case reader_type::character:
5307
16
                return character_reader_impl<SourceCharT>{}.read(range, value);
5308
5309
66
            case reader_type::character_set:
5310
66
                return character_set_reader_impl<SourceCharT>{}.read(
5311
66
                    range, specs, value);
5312
5313
0
#if !SCN_DISABLE_REGEX
5314
2
            case reader_type::regex:
5315
2
                return regex_string_reader_impl<SourceCharT>{}.read(
5316
2
                    range, specs.charset_string<SourceCharT>(),
5317
2
                    specs.regexp_flags, value);
5318
5319
4
            case reader_type::regex_escaped:
5320
4
                return regex_string_reader_impl<SourceCharT>{}.read(
5321
4
                    range,
5322
4
                    get_unescaped_regex_pattern(
5323
4
                        specs.charset_string<SourceCharT>()),
5324
4
                    specs.regexp_flags, value);
5325
0
#endif
5326
5327
0
            default:
5328
0
                SCN_EXPECT(false);
5329
232
                SCN_UNREACHABLE;
5330
232
        }
5331
5332
232
        SCN_CLANG_POP
5333
232
    }
_ZN3scn2v34impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__112basic_stringIcNSC_11char_traitsIcEENSC_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5294
2.93k
    {
5295
2.93k
        SCN_CLANG_PUSH
5296
2.93k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5297
5298
2.93k
        switch (m_type) {
5299
334
            case reader_type::word:
5300
334
                return word_reader_impl<SourceCharT>{}.read(range, value);
5301
5302
36
            case reader_type::custom_word:
5303
36
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5304
36
                                                                   value);
5305
5306
0
            case reader_type::character:
5307
0
                return character_reader_impl<SourceCharT>{}.read(range, value);
5308
5309
130
            case reader_type::character_set:
5310
130
                return character_set_reader_impl<SourceCharT>{}.read(
5311
130
                    range, specs, value);
5312
5313
0
#if !SCN_DISABLE_REGEX
5314
2.35k
            case reader_type::regex:
5315
2.35k
                return regex_string_reader_impl<SourceCharT>{}.read(
5316
2.35k
                    range, specs.charset_string<SourceCharT>(),
5317
2.35k
                    specs.regexp_flags, value);
5318
5319
82
            case reader_type::regex_escaped:
5320
82
                return regex_string_reader_impl<SourceCharT>{}.read(
5321
82
                    range,
5322
82
                    get_unescaped_regex_pattern(
5323
82
                        specs.charset_string<SourceCharT>()),
5324
82
                    specs.regexp_flags, value);
5325
0
#endif
5326
5327
0
            default:
5328
0
                SCN_EXPECT(false);
5329
2.93k
                SCN_UNREACHABLE;
5330
2.93k
        }
5331
5332
2.93k
        SCN_CLANG_POP
5333
2.93k
    }
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__112basic_stringIwNSH_11char_traitsIwEENSH_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESQ_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__112basic_stringIwNSF_11char_traitsIwEENSF_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESO_RKNS9_12format_specsERT0_
_ZN3scn2v34impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__112basic_stringIwNSE_11char_traitsIwEENSE_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESN_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5294
232
    {
5295
232
        SCN_CLANG_PUSH
5296
232
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5297
5298
232
        switch (m_type) {
5299
124
            case reader_type::word:
5300
124
                return word_reader_impl<SourceCharT>{}.read(range, value);
5301
5302
20
            case reader_type::custom_word:
5303
20
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5304
20
                                                                   value);
5305
5306
16
            case reader_type::character:
5307
16
                return character_reader_impl<SourceCharT>{}.read(range, value);
5308
5309
66
            case reader_type::character_set:
5310
66
                return character_set_reader_impl<SourceCharT>{}.read(
5311
66
                    range, specs, value);
5312
5313
0
#if !SCN_DISABLE_REGEX
5314
2
            case reader_type::regex:
5315
2
                return regex_string_reader_impl<SourceCharT>{}.read(
5316
2
                    range, specs.charset_string<SourceCharT>(),
5317
2
                    specs.regexp_flags, value);
5318
5319
4
            case reader_type::regex_escaped:
5320
4
                return regex_string_reader_impl<SourceCharT>{}.read(
5321
4
                    range,
5322
4
                    get_unescaped_regex_pattern(
5323
4
                        specs.charset_string<SourceCharT>()),
5324
4
                    specs.regexp_flags, value);
5325
0
#endif
5326
5327
0
            default:
5328
0
                SCN_EXPECT(false);
5329
232
                SCN_UNREACHABLE;
5330
232
        }
5331
5332
232
        SCN_CLANG_POP
5333
232
    }
_ZN3scn2v34impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__112basic_stringIwNSC_11char_traitsIwEENSC_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5294
2.93k
    {
5295
2.93k
        SCN_CLANG_PUSH
5296
2.93k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5297
5298
2.93k
        switch (m_type) {
5299
334
            case reader_type::word:
5300
334
                return word_reader_impl<SourceCharT>{}.read(range, value);
5301
5302
36
            case reader_type::custom_word:
5303
36
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5304
36
                                                                   value);
5305
5306
0
            case reader_type::character:
5307
0
                return character_reader_impl<SourceCharT>{}.read(range, value);
5308
5309
130
            case reader_type::character_set:
5310
130
                return character_set_reader_impl<SourceCharT>{}.read(
5311
130
                    range, specs, value);
5312
5313
0
#if !SCN_DISABLE_REGEX
5314
2.35k
            case reader_type::regex:
5315
2.35k
                return regex_string_reader_impl<SourceCharT>{}.read(
5316
2.35k
                    range, specs.charset_string<SourceCharT>(),
5317
2.35k
                    specs.regexp_flags, value);
5318
5319
82
            case reader_type::regex_escaped:
5320
82
                return regex_string_reader_impl<SourceCharT>{}.read(
5321
82
                    range,
5322
82
                    get_unescaped_regex_pattern(
5323
82
                        specs.charset_string<SourceCharT>()),
5324
82
                    specs.regexp_flags, value);
5325
0
#endif
5326
5327
0
            default:
5328
0
                SCN_EXPECT(false);
5329
2.93k
                SCN_UNREACHABLE;
5330
2.93k
        }
5331
5332
2.93k
        SCN_CLANG_POP
5333
2.93k
    }
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIcNSH_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIcNSF_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__117basic_string_viewIcNSE_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__117basic_string_viewIcNSC_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEENSt3__117basic_string_viewIwNSH_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSH_9add_constIT_E4typeEEEEEEESO_RKNSA_12format_specsERT0_
Unexecuted instantiation: _ZN3scn2v34impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEENSt3__117basic_string_viewIwNSF_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSF_9add_constIT_E4typeEEEEEEESM_RKNS9_12format_specsERT0_
_ZN3scn2v34impl13string_readerIwE9read_implINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEENSt3__117basic_string_viewIwNSE_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSE_9add_constIT_E4typeEEEEEEESL_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5294
232
    {
5295
232
        SCN_CLANG_PUSH
5296
232
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5297
5298
232
        switch (m_type) {
5299
124
            case reader_type::word:
5300
124
                return word_reader_impl<SourceCharT>{}.read(range, value);
5301
5302
20
            case reader_type::custom_word:
5303
20
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5304
20
                                                                   value);
5305
5306
16
            case reader_type::character:
5307
16
                return character_reader_impl<SourceCharT>{}.read(range, value);
5308
5309
66
            case reader_type::character_set:
5310
66
                return character_set_reader_impl<SourceCharT>{}.read(
5311
66
                    range, specs, value);
5312
5313
0
#if !SCN_DISABLE_REGEX
5314
2
            case reader_type::regex:
5315
2
                return regex_string_reader_impl<SourceCharT>{}.read(
5316
2
                    range, specs.charset_string<SourceCharT>(),
5317
2
                    specs.regexp_flags, value);
5318
5319
4
            case reader_type::regex_escaped:
5320
4
                return regex_string_reader_impl<SourceCharT>{}.read(
5321
4
                    range,
5322
4
                    get_unescaped_regex_pattern(
5323
4
                        specs.charset_string<SourceCharT>()),
5324
4
                    specs.regexp_flags, value);
5325
0
#endif
5326
5327
0
            default:
5328
0
                SCN_EXPECT(false);
5329
232
                SCN_UNREACHABLE;
5330
232
        }
5331
5332
232
        SCN_CLANG_POP
5333
232
    }
_ZN3scn2v34impl13string_readerIwE9read_implINS0_6ranges6detail9subrange_8subrangeIPKwSA_EENSt3__117basic_string_viewIwNSC_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSC_9add_constIT_E4typeEEEEEEESJ_RKNS0_6detail12format_specsERT0_
Line
Count
Source
5294
2.93k
    {
5295
2.93k
        SCN_CLANG_PUSH
5296
2.93k
        SCN_CLANG_IGNORE("-Wcovered-switch-default")
5297
5298
2.93k
        switch (m_type) {
5299
334
            case reader_type::word:
5300
334
                return word_reader_impl<SourceCharT>{}.read(range, value);
5301
5302
36
            case reader_type::custom_word:
5303
36
                return custom_word_reader_impl<SourceCharT>{}.read(range, specs,
5304
36
                                                                   value);
5305
5306
0
            case reader_type::character:
5307
0
                return character_reader_impl<SourceCharT>{}.read(range, value);
5308
5309
130
            case reader_type::character_set:
5310
130
                return character_set_reader_impl<SourceCharT>{}.read(
5311
130
                    range, specs, value);
5312
5313
0
#if !SCN_DISABLE_REGEX
5314
2.35k
            case reader_type::regex:
5315
2.35k
                return regex_string_reader_impl<SourceCharT>{}.read(
5316
2.35k
                    range, specs.charset_string<SourceCharT>(),
5317
2.35k
                    specs.regexp_flags, value);
5318
5319
82
            case reader_type::regex_escaped:
5320
82
                return regex_string_reader_impl<SourceCharT>{}.read(
5321
82
                    range,
5322
82
                    get_unescaped_regex_pattern(
5323
82
                        specs.charset_string<SourceCharT>()),
5324
82
                    specs.regexp_flags, value);
5325
0
#endif
5326
5327
0
            default:
5328
0
                SCN_EXPECT(false);
5329
2.93k
                SCN_UNREACHABLE;
5330
2.93k
        }
5331
5332
2.93k
        SCN_CLANG_POP
5333
2.93k
    }
5334
5335
    reader_type m_type{reader_type::word};
5336
};
5337
5338
template <typename SourceCharT>
5339
class reader_impl_for_string : public string_reader<SourceCharT> {};
5340
5341
/////////////////////////////////////////////////////////////////
5342
// Boolean reader
5343
/////////////////////////////////////////////////////////////////
5344
5345
struct bool_reader_base {
5346
    enum options_type { allow_text = 1, allow_numeric = 2 };
5347
5348
13.7k
    constexpr bool_reader_base() = default;
5349
1.36k
    constexpr bool_reader_base(unsigned opt) : m_options(opt) {}
5350
5351
    template <typename Range>
5352
    auto read_classic(Range range, bool& value) const
5353
        -> scan_expected<ranges::const_iterator_t<Range>>
5354
14.9k
    {
5355
14.9k
        scan_error err{scan_error::invalid_scanned_value,
5356
14.9k
                       "Failed to read boolean"};
5357
5358
14.9k
        if (m_options & allow_numeric) {
5359
14.7k
            if (auto r = read_numeric(range, value)) {
5360
0
                return *r;
5361
0
            }
5362
14.7k
            else {
5363
14.7k
                err = r.error();
5364
14.7k
            }
5365
14.7k
        }
5366
5367
14.9k
        if (m_options & allow_text) {
5368
14.9k
            if (auto r = read_textual_classic(range, value)) {
5369
0
                return *r;
5370
0
            }
5371
14.9k
            else {
5372
14.9k
                err = r.error();
5373
14.9k
            }
5374
14.9k
        }
5375
5376
14.9k
        return unexpected(err);
5377
14.9k
    }
_ZNK3scn2v34impl16bool_reader_base12read_classicINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_Rb
Line
Count
Source
5354
1.02k
    {
5355
1.02k
        scan_error err{scan_error::invalid_scanned_value,
5356
1.02k
                       "Failed to read boolean"};
5357
5358
1.02k
        if (m_options & allow_numeric) {
5359
904
            if (auto r = read_numeric(range, value)) {
5360
0
                return *r;
5361
0
            }
5362
904
            else {
5363
904
                err = r.error();
5364
904
            }
5365
904
        }
5366
5367
1.02k
        if (m_options & allow_text) {
5368
1.00k
            if (auto r = read_textual_classic(range, value)) {
5369
0
                return *r;
5370
0
            }
5371
1.00k
            else {
5372
1.00k
                err = r.error();
5373
1.00k
            }
5374
1.00k
        }
5375
5376
1.02k
        return unexpected(err);
5377
1.02k
    }
Unexecuted instantiation: _ZNK3scn2v34impl16bool_reader_base12read_classicINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_Rb
_ZNK3scn2v34impl16bool_reader_base12read_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
Line
Count
Source
5354
332
    {
5355
332
        scan_error err{scan_error::invalid_scanned_value,
5356
332
                       "Failed to read boolean"};
5357
5358
332
        if (m_options & allow_numeric) {
5359
262
            if (auto r = read_numeric(range, value)) {
5360
0
                return *r;
5361
0
            }
5362
262
            else {
5363
262
                err = r.error();
5364
262
            }
5365
262
        }
5366
5367
332
        if (m_options & allow_text) {
5368
308
            if (auto r = read_textual_classic(range, value)) {
5369
0
                return *r;
5370
0
            }
5371
308
            else {
5372
308
                err = r.error();
5373
308
            }
5374
308
        }
5375
5376
332
        return unexpected(err);
5377
332
    }
Unexecuted instantiation: _ZNK3scn2v34impl16bool_reader_base12read_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_Rb
_ZNK3scn2v34impl16bool_reader_base12read_classicINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_Rb
Line
Count
Source
5354
13.4k
    {
5355
13.4k
        scan_error err{scan_error::invalid_scanned_value,
5356
13.4k
                       "Failed to read boolean"};
5357
5358
13.4k
        if (m_options & allow_numeric) {
5359
13.4k
            if (auto r = read_numeric(range, value)) {
5360
0
                return *r;
5361
0
            }
5362
13.4k
            else {
5363
13.4k
                err = r.error();
5364
13.4k
            }
5365
13.4k
        }
5366
5367
13.4k
        if (m_options & allow_text) {
5368
13.4k
            if (auto r = read_textual_classic(range, value)) {
5369
0
                return *r;
5370
0
            }
5371
13.4k
            else {
5372
13.4k
                err = r.error();
5373
13.4k
            }
5374
13.4k
        }
5375
5376
13.4k
        return unexpected(err);
5377
13.4k
    }
_ZNK3scn2v34impl16bool_reader_base12read_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
Line
Count
Source
5354
164
    {
5355
164
        scan_error err{scan_error::invalid_scanned_value,
5356
164
                       "Failed to read boolean"};
5357
5358
164
        if (m_options & allow_numeric) {
5359
140
            if (auto r = read_numeric(range, value)) {
5360
0
                return *r;
5361
0
            }
5362
140
            else {
5363
140
                err = r.error();
5364
140
            }
5365
140
        }
5366
5367
164
        if (m_options & allow_text) {
5368
144
            if (auto r = read_textual_classic(range, value)) {
5369
0
                return *r;
5370
0
            }
5371
144
            else {
5372
144
                err = r.error();
5373
144
            }
5374
144
        }
5375
5376
164
        return unexpected(err);
5377
164
    }
Unexecuted instantiation: _ZNK3scn2v34impl16bool_reader_base12read_classicINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_Rb
Unexecuted instantiation: _ZNK3scn2v34impl16bool_reader_base12read_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_Rb
5378
5379
protected:
5380
    template <typename Range>
5381
    auto read_numeric(Range range, bool& value) const
5382
        -> scan_expected<ranges::const_iterator_t<Range>>
5383
14.8k
    {
5384
14.8k
        if (auto r = read_matching_code_unit(range, '0')) {
5385
0
            value = false;
5386
0
            return *r;
5387
0
        }
5388
14.8k
        if (auto r = read_matching_code_unit(range, '1')) {
5389
0
            value = true;
5390
0
            return *r;
5391
0
        }
5392
5393
14.8k
        return unexpected_scan_error(
5394
14.8k
            scan_error::invalid_scanned_value,
5395
14.8k
            "Failed to read numeric boolean value: No match");
5396
14.8k
    }
_ZNK3scn2v34impl16bool_reader_base12read_numericINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_Rb
Line
Count
Source
5383
922
    {
5384
922
        if (auto r = read_matching_code_unit(range, '0')) {
5385
0
            value = false;
5386
0
            return *r;
5387
0
        }
5388
922
        if (auto r = read_matching_code_unit(range, '1')) {
5389
0
            value = true;
5390
0
            return *r;
5391
0
        }
5392
5393
922
        return unexpected_scan_error(
5394
922
            scan_error::invalid_scanned_value,
5395
922
            "Failed to read numeric boolean value: No match");
5396
922
    }
Unexecuted instantiation: _ZNK3scn2v34impl16bool_reader_base12read_numericINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_Rb
_ZNK3scn2v34impl16bool_reader_base12read_numericINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
Line
Count
Source
5383
272
    {
5384
272
        if (auto r = read_matching_code_unit(range, '0')) {
5385
0
            value = false;
5386
0
            return *r;
5387
0
        }
5388
272
        if (auto r = read_matching_code_unit(range, '1')) {
5389
0
            value = true;
5390
0
            return *r;
5391
0
        }
5392
5393
272
        return unexpected_scan_error(
5394
272
            scan_error::invalid_scanned_value,
5395
272
            "Failed to read numeric boolean value: No match");
5396
272
    }
Unexecuted instantiation: _ZNK3scn2v34impl16bool_reader_base12read_numericINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_Rb
_ZNK3scn2v34impl16bool_reader_base12read_numericINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_Rb
Line
Count
Source
5383
13.4k
    {
5384
13.4k
        if (auto r = read_matching_code_unit(range, '0')) {
5385
0
            value = false;
5386
0
            return *r;
5387
0
        }
5388
13.4k
        if (auto r = read_matching_code_unit(range, '1')) {
5389
0
            value = true;
5390
0
            return *r;
5391
0
        }
5392
5393
13.4k
        return unexpected_scan_error(
5394
13.4k
            scan_error::invalid_scanned_value,
5395
13.4k
            "Failed to read numeric boolean value: No match");
5396
13.4k
    }
_ZNK3scn2v34impl16bool_reader_base12read_numericINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
Line
Count
Source
5383
158
    {
5384
158
        if (auto r = read_matching_code_unit(range, '0')) {
5385
0
            value = false;
5386
0
            return *r;
5387
0
        }
5388
158
        if (auto r = read_matching_code_unit(range, '1')) {
5389
0
            value = true;
5390
0
            return *r;
5391
0
        }
5392
5393
158
        return unexpected_scan_error(
5394
158
            scan_error::invalid_scanned_value,
5395
158
            "Failed to read numeric boolean value: No match");
5396
158
    }
Unexecuted instantiation: _ZNK3scn2v34impl16bool_reader_base12read_numericINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_Rb
Unexecuted instantiation: _ZNK3scn2v34impl16bool_reader_base12read_numericINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_Rb
5397
5398
    template <typename Range>
5399
    auto read_textual_classic(Range range, bool& value) const
5400
        -> scan_expected<ranges::const_iterator_t<Range>>
5401
14.9k
    {
5402
14.9k
        if (auto r = read_matching_string_classic(range, "true")) {
5403
0
            value = true;
5404
0
            return *r;
5405
0
        }
5406
14.9k
        if (auto r = read_matching_string_classic(range, "false")) {
5407
0
            value = false;
5408
0
            return *r;
5409
0
        }
5410
5411
14.9k
        return unexpected_scan_error(
5412
14.9k
            scan_error::invalid_scanned_value,
5413
14.9k
            "Failed to read textual boolean value: No match");
5414
14.9k
    }
_ZNK3scn2v34impl16bool_reader_base20read_textual_classicINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_Rb
Line
Count
Source
5401
1.00k
    {
5402
1.00k
        if (auto r = read_matching_string_classic(range, "true")) {
5403
0
            value = true;
5404
0
            return *r;
5405
0
        }
5406
1.00k
        if (auto r = read_matching_string_classic(range, "false")) {
5407
0
            value = false;
5408
0
            return *r;
5409
0
        }
5410
5411
1.00k
        return unexpected_scan_error(
5412
1.00k
            scan_error::invalid_scanned_value,
5413
1.00k
            "Failed to read textual boolean value: No match");
5414
1.00k
    }
Unexecuted instantiation: _ZNK3scn2v34impl16bool_reader_base20read_textual_classicINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_Rb
_ZNK3scn2v34impl16bool_reader_base20read_textual_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
Line
Count
Source
5401
308
    {
5402
308
        if (auto r = read_matching_string_classic(range, "true")) {
5403
0
            value = true;
5404
0
            return *r;
5405
0
        }
5406
308
        if (auto r = read_matching_string_classic(range, "false")) {
5407
0
            value = false;
5408
0
            return *r;
5409
0
        }
5410
5411
308
        return unexpected_scan_error(
5412
308
            scan_error::invalid_scanned_value,
5413
308
            "Failed to read textual boolean value: No match");
5414
308
    }
Unexecuted instantiation: _ZNK3scn2v34impl16bool_reader_base20read_textual_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_Rb
_ZNK3scn2v34impl16bool_reader_base20read_textual_classicINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESE_Rb
Line
Count
Source
5401
13.4k
    {
5402
13.4k
        if (auto r = read_matching_string_classic(range, "true")) {
5403
0
            value = true;
5404
0
            return *r;
5405
0
        }
5406
13.4k
        if (auto r = read_matching_string_classic(range, "false")) {
5407
0
            value = false;
5408
0
            return *r;
5409
0
        }
5410
5411
13.4k
        return unexpected_scan_error(
5412
13.4k
            scan_error::invalid_scanned_value,
5413
13.4k
            "Failed to read textual boolean value: No match");
5414
13.4k
    }
_ZNK3scn2v34impl16bool_reader_base20read_textual_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESG_Rb
Line
Count
Source
5401
144
    {
5402
144
        if (auto r = read_matching_string_classic(range, "true")) {
5403
0
            value = true;
5404
0
            return *r;
5405
0
        }
5406
144
        if (auto r = read_matching_string_classic(range, "false")) {
5407
0
            value = false;
5408
0
            return *r;
5409
0
        }
5410
5411
144
        return unexpected_scan_error(
5412
144
            scan_error::invalid_scanned_value,
5413
144
            "Failed to read textual boolean value: No match");
5414
144
    }
Unexecuted instantiation: _ZNK3scn2v34impl16bool_reader_base20read_textual_classicINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_Rb
Unexecuted instantiation: _ZNK3scn2v34impl16bool_reader_base20read_textual_classicINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESJ_Rb
5415
5416
    unsigned m_options{allow_text | allow_numeric};
5417
};
5418
5419
template <typename CharT>
5420
struct bool_reader : public bool_reader_base {
5421
    using bool_reader_base::bool_reader_base;
5422
5423
#if !SCN_DISABLE_LOCALE
5424
    template <typename Range>
5425
    auto read_localized(Range range, detail::locale_ref loc, bool& value) const
5426
        -> scan_expected<ranges::const_iterator_t<Range>>
5427
84
    {
5428
84
        scan_error err{scan_error::invalid_scanned_value,
5429
84
                       "Failed to read boolean"};
5430
5431
84
        if (m_options & allow_numeric) {
5432
66
            if (auto r = read_numeric(range, value)) {
5433
0
                return *r;
5434
0
            }
5435
66
            else {
5436
66
                err = r.error();
5437
66
            }
5438
66
        }
5439
5440
84
        if (m_options & allow_text) {
5441
46
            auto stdloc = loc.get<std::locale>();
5442
46
            const auto& numpunct =
5443
46
                get_or_add_facet<std::numpunct<CharT>>(stdloc);
5444
46
            const auto truename = numpunct.truename();
5445
46
            const auto falsename = numpunct.falsename();
5446
5447
46
            if (auto r =
5448
46
                    read_textual_custom(range, value, truename, falsename)) {
5449
0
                return *r;
5450
0
            }
5451
46
            else {
5452
46
                err = r.error();
5453
46
            }
5454
46
        }
5455
5456
84
        return unexpected(err);
5457
84
    }
_ZNK3scn2v34impl11bool_readerIcE14read_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS0_6detail10locale_refERb
Line
Count
Source
5427
14
    {
5428
14
        scan_error err{scan_error::invalid_scanned_value,
5429
14
                       "Failed to read boolean"};
5430
5431
14
        if (m_options & allow_numeric) {
5432
10
            if (auto r = read_numeric(range, value)) {
5433
0
                return *r;
5434
0
            }
5435
10
            else {
5436
10
                err = r.error();
5437
10
            }
5438
10
        }
5439
5440
14
        if (m_options & allow_text) {
5441
12
            auto stdloc = loc.get<std::locale>();
5442
12
            const auto& numpunct =
5443
12
                get_or_add_facet<std::numpunct<CharT>>(stdloc);
5444
12
            const auto truename = numpunct.truename();
5445
12
            const auto falsename = numpunct.falsename();
5446
5447
12
            if (auto r =
5448
12
                    read_textual_custom(range, value, truename, falsename)) {
5449
0
                return *r;
5450
0
            }
5451
12
            else {
5452
12
                err = r.error();
5453
12
            }
5454
12
        }
5455
5456
14
        return unexpected(err);
5457
14
    }
_ZNK3scn2v34impl11bool_readerIcE14read_localizedINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS0_6detail10locale_refERb
Line
Count
Source
5427
26
    {
5428
26
        scan_error err{scan_error::invalid_scanned_value,
5429
26
                       "Failed to read boolean"};
5430
5431
26
        if (m_options & allow_numeric) {
5432
18
            if (auto r = read_numeric(range, value)) {
5433
0
                return *r;
5434
0
            }
5435
18
            else {
5436
18
                err = r.error();
5437
18
            }
5438
18
        }
5439
5440
26
        if (m_options & allow_text) {
5441
14
            auto stdloc = loc.get<std::locale>();
5442
14
            const auto& numpunct =
5443
14
                get_or_add_facet<std::numpunct<CharT>>(stdloc);
5444
14
            const auto truename = numpunct.truename();
5445
14
            const auto falsename = numpunct.falsename();
5446
5447
14
            if (auto r =
5448
14
                    read_textual_custom(range, value, truename, falsename)) {
5449
0
                return *r;
5450
0
            }
5451
14
            else {
5452
14
                err = r.error();
5453
14
            }
5454
14
        }
5455
5456
26
        return unexpected(err);
5457
26
    }
Unexecuted instantiation: _ZNK3scn2v34impl11bool_readerIcE14read_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSA_10locale_refERb
Unexecuted instantiation: _ZNK3scn2v34impl11bool_readerIcE14read_localizedINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS9_10locale_refERb
_ZNK3scn2v34impl11bool_readerIwE14read_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_NS0_6detail10locale_refERb
Line
Count
Source
5427
20
    {
5428
20
        scan_error err{scan_error::invalid_scanned_value,
5429
20
                       "Failed to read boolean"};
5430
5431
20
        if (m_options & allow_numeric) {
5432
18
            if (auto r = read_numeric(range, value)) {
5433
0
                return *r;
5434
0
            }
5435
18
            else {
5436
18
                err = r.error();
5437
18
            }
5438
18
        }
5439
5440
20
        if (m_options & allow_text) {
5441
10
            auto stdloc = loc.get<std::locale>();
5442
10
            const auto& numpunct =
5443
10
                get_or_add_facet<std::numpunct<CharT>>(stdloc);
5444
10
            const auto truename = numpunct.truename();
5445
10
            const auto falsename = numpunct.falsename();
5446
5447
10
            if (auto r =
5448
10
                    read_textual_custom(range, value, truename, falsename)) {
5449
0
                return *r;
5450
0
            }
5451
10
            else {
5452
10
                err = r.error();
5453
10
            }
5454
10
        }
5455
5456
20
        return unexpected(err);
5457
20
    }
_ZNK3scn2v34impl11bool_readerIwE14read_localizedINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_NS0_6detail10locale_refERb
Line
Count
Source
5427
24
    {
5428
24
        scan_error err{scan_error::invalid_scanned_value,
5429
24
                       "Failed to read boolean"};
5430
5431
24
        if (m_options & allow_numeric) {
5432
20
            if (auto r = read_numeric(range, value)) {
5433
0
                return *r;
5434
0
            }
5435
20
            else {
5436
20
                err = r.error();
5437
20
            }
5438
20
        }
5439
5440
24
        if (m_options & allow_text) {
5441
10
            auto stdloc = loc.get<std::locale>();
5442
10
            const auto& numpunct =
5443
10
                get_or_add_facet<std::numpunct<CharT>>(stdloc);
5444
10
            const auto truename = numpunct.truename();
5445
10
            const auto falsename = numpunct.falsename();
5446
5447
10
            if (auto r =
5448
10
                    read_textual_custom(range, value, truename, falsename)) {
5449
0
                return *r;
5450
0
            }
5451
10
            else {
5452
10
                err = r.error();
5453
10
            }
5454
10
        }
5455
5456
24
        return unexpected(err);
5457
24
    }
Unexecuted instantiation: _ZNK3scn2v34impl11bool_readerIwE14read_localizedINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_NSA_10locale_refERb
Unexecuted instantiation: _ZNK3scn2v34impl11bool_readerIwE14read_localizedINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_NS9_10locale_refERb
5458
#endif
5459
5460
protected:
5461
    template <typename Range>
5462
    auto read_textual_custom(Range range,
5463
                             bool& value,
5464
                             std::basic_string_view<CharT> truename,
5465
                             std::basic_string_view<CharT> falsename) const
5466
        -> scan_expected<ranges::const_iterator_t<Range>>
5467
46
    {
5468
46
        const auto is_truename_shorter = truename.size() <= falsename.size();
5469
46
        const auto shorter = std::pair{
5470
46
            is_truename_shorter ? truename : falsename, is_truename_shorter};
5471
46
        const auto longer = std::pair{
5472
46
            !is_truename_shorter ? truename : falsename, !is_truename_shorter};
5473
5474
46
        if (auto r = read_matching_string(range, shorter.first)) {
5475
0
            value = shorter.second;
5476
0
            return *r;
5477
0
        }
5478
46
        if (auto r = read_matching_string(range, longer.first)) {
5479
0
            value = longer.second;
5480
0
            return *r;
5481
0
        }
5482
5483
46
        return unexpected_scan_error(scan_error::invalid_scanned_value,
5484
46
                                     "read_textual: No match");
5485
46
    }
_ZNK3scn2v34impl11bool_readerIcE19read_textual_customINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RbNSF_17basic_string_viewIcNSF_11char_traitsIcEEEESR_
Line
Count
Source
5467
12
    {
5468
12
        const auto is_truename_shorter = truename.size() <= falsename.size();
5469
12
        const auto shorter = std::pair{
5470
12
            is_truename_shorter ? truename : falsename, is_truename_shorter};
5471
12
        const auto longer = std::pair{
5472
12
            !is_truename_shorter ? truename : falsename, !is_truename_shorter};
5473
5474
12
        if (auto r = read_matching_string(range, shorter.first)) {
5475
0
            value = shorter.second;
5476
0
            return *r;
5477
0
        }
5478
12
        if (auto r = read_matching_string(range, longer.first)) {
5479
0
            value = longer.second;
5480
0
            return *r;
5481
0
        }
5482
5483
12
        return unexpected_scan_error(scan_error::invalid_scanned_value,
5484
12
                                     "read_textual: No match");
5485
12
    }
_ZNK3scn2v34impl11bool_readerIcE19read_textual_customINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RbNSD_17basic_string_viewIcNSD_11char_traitsIcEEEESP_
Line
Count
Source
5467
14
    {
5468
14
        const auto is_truename_shorter = truename.size() <= falsename.size();
5469
14
        const auto shorter = std::pair{
5470
14
            is_truename_shorter ? truename : falsename, is_truename_shorter};
5471
14
        const auto longer = std::pair{
5472
14
            !is_truename_shorter ? truename : falsename, !is_truename_shorter};
5473
5474
14
        if (auto r = read_matching_string(range, shorter.first)) {
5475
0
            value = shorter.second;
5476
0
            return *r;
5477
0
        }
5478
14
        if (auto r = read_matching_string(range, longer.first)) {
5479
0
            value = longer.second;
5480
0
            return *r;
5481
0
        }
5482
5483
14
        return unexpected_scan_error(scan_error::invalid_scanned_value,
5484
14
                                     "read_textual: No match");
5485
14
    }
Unexecuted instantiation: _ZNK3scn2v34impl11bool_readerIcE19read_textual_customINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RbNSI_17basic_string_viewIcNSI_11char_traitsIcEEEESU_
Unexecuted instantiation: _ZNK3scn2v34impl11bool_readerIcE19read_textual_customINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RbNSG_17basic_string_viewIcNSG_11char_traitsIcEEEESS_
_ZNK3scn2v34impl11bool_readerIwE19read_textual_customINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RbNSF_17basic_string_viewIwNSF_11char_traitsIwEEEESR_
Line
Count
Source
5467
10
    {
5468
10
        const auto is_truename_shorter = truename.size() <= falsename.size();
5469
10
        const auto shorter = std::pair{
5470
10
            is_truename_shorter ? truename : falsename, is_truename_shorter};
5471
10
        const auto longer = std::pair{
5472
10
            !is_truename_shorter ? truename : falsename, !is_truename_shorter};
5473
5474
10
        if (auto r = read_matching_string(range, shorter.first)) {
5475
0
            value = shorter.second;
5476
0
            return *r;
5477
0
        }
5478
10
        if (auto r = read_matching_string(range, longer.first)) {
5479
0
            value = longer.second;
5480
0
            return *r;
5481
0
        }
5482
5483
10
        return unexpected_scan_error(scan_error::invalid_scanned_value,
5484
10
                                     "read_textual: No match");
5485
10
    }
_ZNK3scn2v34impl11bool_readerIwE19read_textual_customINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RbNSD_17basic_string_viewIwNSD_11char_traitsIwEEEESP_
Line
Count
Source
5467
10
    {
5468
10
        const auto is_truename_shorter = truename.size() <= falsename.size();
5469
10
        const auto shorter = std::pair{
5470
10
            is_truename_shorter ? truename : falsename, is_truename_shorter};
5471
10
        const auto longer = std::pair{
5472
10
            !is_truename_shorter ? truename : falsename, !is_truename_shorter};
5473
5474
10
        if (auto r = read_matching_string(range, shorter.first)) {
5475
0
            value = shorter.second;
5476
0
            return *r;
5477
0
        }
5478
10
        if (auto r = read_matching_string(range, longer.first)) {
5479
0
            value = longer.second;
5480
0
            return *r;
5481
0
        }
5482
5483
10
        return unexpected_scan_error(scan_error::invalid_scanned_value,
5484
10
                                     "read_textual: No match");
5485
10
    }
Unexecuted instantiation: _ZNK3scn2v34impl11bool_readerIwE19read_textual_customINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RbNSI_17basic_string_viewIwNSI_11char_traitsIwEEEESU_
Unexecuted instantiation: _ZNK3scn2v34impl11bool_readerIwE19read_textual_customINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RbNSG_17basic_string_viewIwNSG_11char_traitsIwEEEESS_
5486
};
5487
5488
template <typename CharT>
5489
class reader_impl_for_bool
5490
    : public reader_base<reader_impl_for_bool<CharT>, CharT> {
5491
public:
5492
    reader_impl_for_bool() = default;
5493
5494
    void check_specs_impl(const detail::format_specs& specs,
5495
                          reader_error_handler& eh)
5496
10.4k
    {
5497
10.4k
        detail::check_bool_type_specs(specs, eh);
5498
10.4k
    }
scn::v3::impl::reader_impl_for_bool<char>::check_specs_impl(scn::v3::detail::format_specs const&, scn::v3::impl::reader_error_handler&)
Line
Count
Source
5496
7.17k
    {
5497
7.17k
        detail::check_bool_type_specs(specs, eh);
5498
7.17k
    }
scn::v3::impl::reader_impl_for_bool<wchar_t>::check_specs_impl(scn::v3::detail::format_specs const&, scn::v3::impl::reader_error_handler&)
Line
Count
Source
5496
3.29k
    {
5497
3.29k
        detail::check_bool_type_specs(specs, eh);
5498
3.29k
    }
5499
5500
    template <typename Range>
5501
    auto read_default(Range range, bool& value, detail::locale_ref loc) const
5502
        -> scan_expected<ranges::const_iterator_t<Range>>
5503
13.7k
    {
5504
13.7k
        SCN_UNUSED(loc);
5505
5506
13.7k
        return bool_reader<CharT>{}.read_classic(range, value);
5507
13.7k
    }
_ZNK3scn2v34impl20reader_impl_for_boolIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RbNS0_6detail10locale_refE
Line
Count
Source
5503
634
    {
5504
634
        SCN_UNUSED(loc);
5505
5506
634
        return bool_reader<CharT>{}.read_classic(range, value);
5507
634
    }
Unexecuted instantiation: _ZNK3scn2v34impl20reader_impl_for_boolIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RbNS9_10locale_refE
_ZNK3scn2v34impl20reader_impl_for_boolIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RbNS0_6detail10locale_refE
Line
Count
Source
5503
13.0k
    {
5504
13.0k
        SCN_UNUSED(loc);
5505
5506
13.0k
        return bool_reader<CharT>{}.read_classic(range, value);
5507
13.0k
    }
Unexecuted instantiation: _ZNK3scn2v34impl20reader_impl_for_boolIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RbNS9_10locale_refE
5508
5509
    template <typename Range>
5510
    auto read_specs(Range range,
5511
                    const detail::format_specs& specs,
5512
                    bool& value,
5513
                    detail::locale_ref loc) const
5514
        -> scan_expected<ranges::const_iterator_t<Range>>
5515
1.36k
    {
5516
1.36k
        const auto rd = bool_reader<CharT>{get_options(specs)};
5517
5518
1.36k
#if !SCN_DISABLE_LOCALE
5519
1.36k
        if (specs.localized) {
5520
84
            return rd.read_localized(range, loc, value);
5521
84
        }
5522
1.27k
#endif
5523
5524
1.27k
        return rd.read_classic(range, value);
5525
1.36k
    }
_ZNK3scn2v34impl20reader_impl_for_boolIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERbNSN_10locale_refE
Line
Count
Source
5515
346
    {
5516
346
        const auto rd = bool_reader<CharT>{get_options(specs)};
5517
5518
346
#if !SCN_DISABLE_LOCALE
5519
346
        if (specs.localized) {
5520
14
            return rd.read_localized(range, loc, value);
5521
14
        }
5522
332
#endif
5523
5524
332
        return rd.read_classic(range, value);
5525
346
    }
_ZNK3scn2v34impl20reader_impl_for_boolIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERbNSL_10locale_refE
Line
Count
Source
5515
416
    {
5516
416
        const auto rd = bool_reader<CharT>{get_options(specs)};
5517
5518
416
#if !SCN_DISABLE_LOCALE
5519
416
        if (specs.localized) {
5520
26
            return rd.read_localized(range, loc, value);
5521
26
        }
5522
390
#endif
5523
5524
390
        return rd.read_classic(range, value);
5525
416
    }
Unexecuted instantiation: _ZNK3scn2v34impl20reader_impl_for_boolIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERbNSA_10locale_refE
Unexecuted instantiation: _ZNK3scn2v34impl20reader_impl_for_boolIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERbNS9_10locale_refE
_ZNK3scn2v34impl20reader_impl_for_boolIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERbNSN_10locale_refE
Line
Count
Source
5515
184
    {
5516
184
        const auto rd = bool_reader<CharT>{get_options(specs)};
5517
5518
184
#if !SCN_DISABLE_LOCALE
5519
184
        if (specs.localized) {
5520
20
            return rd.read_localized(range, loc, value);
5521
20
        }
5522
164
#endif
5523
5524
164
        return rd.read_classic(range, value);
5525
184
    }
_ZNK3scn2v34impl20reader_impl_for_boolIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERbNSL_10locale_refE
Line
Count
Source
5515
414
    {
5516
414
        const auto rd = bool_reader<CharT>{get_options(specs)};
5517
5518
414
#if !SCN_DISABLE_LOCALE
5519
414
        if (specs.localized) {
5520
24
            return rd.read_localized(range, loc, value);
5521
24
        }
5522
390
#endif
5523
5524
390
        return rd.read_classic(range, value);
5525
414
    }
Unexecuted instantiation: _ZNK3scn2v34impl20reader_impl_for_boolIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERbNSA_10locale_refE
Unexecuted instantiation: _ZNK3scn2v34impl20reader_impl_for_boolIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERbNS9_10locale_refE
5526
5527
    static constexpr unsigned get_options(const detail::format_specs& specs)
5528
1.36k
    {
5529
1.36k
        SCN_GCC_COMPAT_PUSH
5530
1.36k
        SCN_GCC_COMPAT_IGNORE("-Wswitch-enum")
5531
5532
1.36k
        switch (specs.type) {
5533
280
            case detail::presentation_type::string:
5534
280
                return bool_reader_base::allow_text;
5535
5536
26
            case detail::presentation_type::int_generic:
5537
42
            case detail::presentation_type::int_binary:
5538
56
            case detail::presentation_type::int_decimal:
5539
80
            case detail::presentation_type::int_hex:
5540
108
            case detail::presentation_type::int_octal:
5541
124
            case detail::presentation_type::int_unsigned_decimal:
5542
124
                return bool_reader_base::allow_numeric;
5543
5544
956
            default:
5545
956
                return bool_reader_base::allow_text |
5546
956
                       bool_reader_base::allow_numeric;
5547
1.36k
        }
5548
5549
        SCN_GCC_COMPAT_POP  // -Wswitch-enum
5550
1.36k
    }
scn::v3::impl::reader_impl_for_bool<char>::get_options(scn::v3::detail::format_specs const&)
Line
Count
Source
5528
762
    {
5529
762
        SCN_GCC_COMPAT_PUSH
5530
762
        SCN_GCC_COMPAT_IGNORE("-Wswitch-enum")
5531
5532
762
        switch (specs.type) {
5533
202
            case detail::presentation_type::string:
5534
202
                return bool_reader_base::allow_text;
5535
5536
12
            case detail::presentation_type::int_generic:
5537
20
            case detail::presentation_type::int_binary:
5538
26
            case detail::presentation_type::int_decimal:
5539
38
            case detail::presentation_type::int_hex:
5540
56
            case detail::presentation_type::int_octal:
5541
60
            case detail::presentation_type::int_unsigned_decimal:
5542
60
                return bool_reader_base::allow_numeric;
5543
5544
500
            default:
5545
500
                return bool_reader_base::allow_text |
5546
500
                       bool_reader_base::allow_numeric;
5547
762
        }
5548
5549
        SCN_GCC_COMPAT_POP  // -Wswitch-enum
5550
762
    }
scn::v3::impl::reader_impl_for_bool<wchar_t>::get_options(scn::v3::detail::format_specs const&)
Line
Count
Source
5528
598
    {
5529
598
        SCN_GCC_COMPAT_PUSH
5530
598
        SCN_GCC_COMPAT_IGNORE("-Wswitch-enum")
5531
5532
598
        switch (specs.type) {
5533
78
            case detail::presentation_type::string:
5534
78
                return bool_reader_base::allow_text;
5535
5536
14
            case detail::presentation_type::int_generic:
5537
22
            case detail::presentation_type::int_binary:
5538
30
            case detail::presentation_type::int_decimal:
5539
42
            case detail::presentation_type::int_hex:
5540
52
            case detail::presentation_type::int_octal:
5541
64
            case detail::presentation_type::int_unsigned_decimal:
5542
64
                return bool_reader_base::allow_numeric;
5543
5544
456
            default:
5545
456
                return bool_reader_base::allow_text |
5546
456
                       bool_reader_base::allow_numeric;
5547
598
        }
5548
5549
        SCN_GCC_COMPAT_POP  // -Wswitch-enum
5550
598
    }
5551
};
5552
5553
/////////////////////////////////////////////////////////////////
5554
// Character (code unit, code point) reader
5555
/////////////////////////////////////////////////////////////////
5556
5557
template <typename CharT>
5558
class code_unit_reader {
5559
public:
5560
    template <typename SourceRange>
5561
    auto read(const SourceRange& range, CharT& ch)
5562
        -> scan_expected<ranges::const_iterator_t<SourceRange>>
5563
14.6k
    {
5564
14.6k
        SCN_TRY(it, read_code_unit(range).transform_error(make_eof_scan_error));
5565
14.6k
        ch = *range.begin();
5566
14.6k
        return it;
5567
14.6k
    }
Unexecuted instantiation: _ZN3scn2v34impl16code_unit_readerIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSK_Rc
Unexecuted instantiation: _ZN3scn2v34impl16code_unit_readerIcE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSI_Rc
_ZN3scn2v34impl16code_unit_readerIcE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSH_Rc
Line
Count
Source
5563
254
    {
5564
254
        SCN_TRY(it, read_code_unit(range).transform_error(make_eof_scan_error));
5565
254
        ch = *range.begin();
5566
254
        return it;
5567
254
    }
_ZN3scn2v34impl16code_unit_readerIcE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSF_Rc
Line
Count
Source
5563
882
    {
5564
882
        SCN_TRY(it, read_code_unit(range).transform_error(make_eof_scan_error));
5565
882
        ch = *range.begin();
5566
882
        return it;
5567
882
    }
Unexecuted instantiation: _ZN3scn2v34impl16code_unit_readerIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSK_Rw
Unexecuted instantiation: _ZN3scn2v34impl16code_unit_readerIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSI_Rw
_ZN3scn2v34impl16code_unit_readerIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSH_Rw
Line
Count
Source
5563
120
    {
5564
120
        SCN_TRY(it, read_code_unit(range).transform_error(make_eof_scan_error));
5565
120
        ch = *range.begin();
5566
120
        return it;
5567
120
    }
_ZN3scn2v34impl16code_unit_readerIwE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSF_Rw
Line
Count
Source
5563
13.4k
    {
5564
13.4k
        SCN_TRY(it, read_code_unit(range).transform_error(make_eof_scan_error));
5565
13.4k
        ch = *range.begin();
5566
13.4k
        return it;
5567
13.4k
    }
5568
};
5569
5570
template <typename CharT>
5571
class code_point_reader;
5572
5573
template <>
5574
class code_point_reader<char32_t> {
5575
public:
5576
    template <typename SourceRange>
5577
    auto read(const SourceRange& range, char32_t& cp)
5578
        -> scan_expected<ranges::const_iterator_t<SourceRange>>
5579
0
    {
5580
0
        auto result = read_code_point_into(range);
5581
0
        if (SCN_UNLIKELY(!result.is_valid())) {
5582
0
            return unexpected_scan_error(scan_error::invalid_scanned_value,
5583
0
                                         "Invalid code point");
5584
0
        }
5585
0
        cp = detail::decode_code_point_exhaustive_valid(
5586
0
            std::basic_string_view<detail::char_t<SourceRange>>{
5587
0
                result.codepoint});
5588
0
        return result.iterator;
5589
0
    }
Unexecuted instantiation: _ZN3scn2v34impl17code_point_readerIDiE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSF_RDi
Unexecuted instantiation: _ZN3scn2v34impl17code_point_readerIDiE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSI_RDi
Unexecuted instantiation: _ZN3scn2v34impl17code_point_readerIDiE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSH_RDi
Unexecuted instantiation: _ZN3scn2v34impl17code_point_readerIDiE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSK_RDi
Unexecuted instantiation: _ZN3scn2v34impl17code_point_readerIDiE4readINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSF_RDi
Unexecuted instantiation: _ZN3scn2v34impl17code_point_readerIDiE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSH_RDi
Unexecuted instantiation: _ZN3scn2v34impl17code_point_readerIDiE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSI_RDi
Unexecuted instantiation: _ZN3scn2v34impl17code_point_readerIDiE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSK_RDi
5590
};
5591
5592
template <>
5593
class code_point_reader<wchar_t> {
5594
public:
5595
    template <typename SourceRange>
5596
    auto read(const SourceRange& range, wchar_t& ch)
5597
        -> scan_expected<ranges::const_iterator_t<SourceRange>>
5598
0
    {
5599
0
        code_point_reader<char32_t> reader{};
5600
0
        char32_t cp{};
5601
0
        auto ret = reader.read(range, cp);
5602
0
        if (SCN_UNLIKELY(!ret)) {
5603
0
            return unexpected(ret.error());
5604
0
        }
5605
5606
0
        SCN_TRY(encoded_ch, encode_code_point_as_wide_character(cp, true));
5607
0
        ch = encoded_ch;
5608
0
        return *ret;
5609
0
    }
Unexecuted instantiation: _ZN3scn2v34impl17code_point_readerIwE4readINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSF_Rw
Unexecuted instantiation: _ZN3scn2v34impl17code_point_readerIwE4readINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSI_Rw
Unexecuted instantiation: _ZN3scn2v34impl17code_point_readerIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSH_Rw
Unexecuted instantiation: _ZN3scn2v34impl17code_point_readerIwE4readINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEERKSK_Rw
5610
};
5611
5612
template <typename ValueCharT>
5613
class char_reader_base {
5614
public:
5615
    constexpr char_reader_base() = default;
5616
5617
    bool skip_ws_before_read() const
5618
15.7k
    {
5619
15.7k
        return false;
5620
15.7k
    }
scn::v3::impl::char_reader_base<char>::skip_ws_before_read() const
Line
Count
Source
5618
1.69k
    {
5619
1.69k
        return false;
5620
1.69k
    }
scn::v3::impl::char_reader_base<wchar_t>::skip_ws_before_read() const
Line
Count
Source
5618
14.0k
    {
5619
14.0k
        return false;
5620
14.0k
    }
Unexecuted instantiation: scn::v3::impl::char_reader_base<char32_t>::skip_ws_before_read() const
5621
5622
    static scan_error check_specs(const detail::format_specs& specs)
5623
10.3k
    {
5624
10.3k
        reader_error_handler eh{};
5625
10.3k
        if constexpr (std::is_same_v<ValueCharT, char32_t>) {
5626
0
            detail::check_code_point_type_specs(specs, eh);
5627
        }
5628
10.3k
        else {
5629
10.3k
            detail::check_char_type_specs(specs, eh);
5630
10.3k
        }
5631
10.3k
        if (SCN_UNLIKELY(!eh)) {
5632
9.33k
            return {scan_error::invalid_format_string, eh.m_msg};
5633
9.33k
        }
5634
1.04k
        return {};
5635
10.3k
    }
scn::v3::impl::char_reader_base<char>::check_specs(scn::v3::detail::format_specs const&)
Line
Count
Source
5623
7.13k
    {
5624
7.13k
        reader_error_handler eh{};
5625
        if constexpr (std::is_same_v<ValueCharT, char32_t>) {
5626
            detail::check_code_point_type_specs(specs, eh);
5627
        }
5628
7.13k
        else {
5629
7.13k
            detail::check_char_type_specs(specs, eh);
5630
7.13k
        }
5631
7.13k
        if (SCN_UNLIKELY(!eh)) {
5632
6.57k
            return {scan_error::invalid_format_string, eh.m_msg};
5633
6.57k
        }
5634
562
        return {};
5635
7.13k
    }
scn::v3::impl::char_reader_base<wchar_t>::check_specs(scn::v3::detail::format_specs const&)
Line
Count
Source
5623
3.25k
    {
5624
3.25k
        reader_error_handler eh{};
5625
        if constexpr (std::is_same_v<ValueCharT, char32_t>) {
5626
            detail::check_code_point_type_specs(specs, eh);
5627
        }
5628
3.25k
        else {
5629
3.25k
            detail::check_char_type_specs(specs, eh);
5630
3.25k
        }
5631
3.25k
        if (SCN_UNLIKELY(!eh)) {
5632
2.76k
            return {scan_error::invalid_format_string, eh.m_msg};
5633
2.76k
        }
5634
484
        return {};
5635
3.25k
    }
Unexecuted instantiation: scn::v3::impl::char_reader_base<char32_t>::check_specs(scn::v3::detail::format_specs const&)
5636
};
5637
5638
template <typename CharT>
5639
class reader_impl_for_char : public char_reader_base<char> {
5640
public:
5641
    template <typename Range>
5642
    auto read_default(Range range, char& value, detail::locale_ref loc)
5643
        -> scan_expected<ranges::const_iterator_t<Range>>
5644
1.13k
    {
5645
1.13k
        SCN_UNUSED(loc);
5646
1.13k
        if constexpr (std::is_same_v<CharT, char>) {
5647
1.13k
            return code_unit_reader<char>{}.read(range, value);
5648
        }
5649
0
        else {
5650
0
            SCN_UNUSED(range);
5651
0
            SCN_EXPECT(false);
5652
0
            SCN_UNREACHABLE;
5653
0
        }
5654
1.13k
    }
Unexecuted instantiation: _ZN3scn2v34impl20reader_impl_for_charIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RcNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20reader_impl_for_charIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RcNS9_10locale_refE
_ZN3scn2v34impl20reader_impl_for_charIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RcNS0_6detail10locale_refE
Line
Count
Source
5644
254
    {
5645
254
        SCN_UNUSED(loc);
5646
254
        if constexpr (std::is_same_v<CharT, char>) {
5647
254
            return code_unit_reader<char>{}.read(range, value);
5648
        }
5649
        else {
5650
            SCN_UNUSED(range);
5651
            SCN_EXPECT(false);
5652
            SCN_UNREACHABLE;
5653
        }
5654
254
    }
_ZN3scn2v34impl20reader_impl_for_charIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RcNS0_6detail10locale_refE
Line
Count
Source
5644
882
    {
5645
882
        SCN_UNUSED(loc);
5646
882
        if constexpr (std::is_same_v<CharT, char>) {
5647
882
            return code_unit_reader<char>{}.read(range, value);
5648
        }
5649
        else {
5650
            SCN_UNUSED(range);
5651
            SCN_EXPECT(false);
5652
            SCN_UNREACHABLE;
5653
        }
5654
882
    }
Unexecuted instantiation: _ZN3scn2v34impl20reader_impl_for_charIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RcNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20reader_impl_for_charIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RcNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20reader_impl_for_charIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RcNS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20reader_impl_for_charIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RcNSA_10locale_refE
5655
5656
    template <typename Range>
5657
    auto read_specs(Range range,
5658
                    const detail::format_specs& specs,
5659
                    char& value,
5660
                    detail::locale_ref loc)
5661
        -> scan_expected<ranges::const_iterator_t<Range>>
5662
556
    {
5663
556
        if (specs.type == detail::presentation_type::none ||
5664
556
            specs.type == detail::presentation_type::character) {
5665
502
            return read_default(range, value, loc);
5666
502
        }
5667
5668
54
        reader_impl_for_int<CharT> reader{};
5669
54
        signed char tmp_value{};
5670
54
        auto ret = reader.read_specs(range, specs, tmp_value, loc);
5671
54
        value = static_cast<signed char>(value);
5672
54
        return ret;
5673
556
    }
Unexecuted instantiation: _ZN3scn2v34impl20reader_impl_for_charIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERcNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20reader_impl_for_charIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERcNS9_10locale_refE
_ZN3scn2v34impl20reader_impl_for_charIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERcNSN_10locale_refE
Line
Count
Source
5662
286
    {
5663
286
        if (specs.type == detail::presentation_type::none ||
5664
286
            specs.type == detail::presentation_type::character) {
5665
254
            return read_default(range, value, loc);
5666
254
        }
5667
5668
32
        reader_impl_for_int<CharT> reader{};
5669
32
        signed char tmp_value{};
5670
32
        auto ret = reader.read_specs(range, specs, tmp_value, loc);
5671
32
        value = static_cast<signed char>(value);
5672
32
        return ret;
5673
286
    }
_ZN3scn2v34impl20reader_impl_for_charIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERcNSL_10locale_refE
Line
Count
Source
5662
270
    {
5663
270
        if (specs.type == detail::presentation_type::none ||
5664
270
            specs.type == detail::presentation_type::character) {
5665
248
            return read_default(range, value, loc);
5666
248
        }
5667
5668
22
        reader_impl_for_int<CharT> reader{};
5669
22
        signed char tmp_value{};
5670
22
        auto ret = reader.read_specs(range, specs, tmp_value, loc);
5671
22
        value = static_cast<signed char>(value);
5672
22
        return ret;
5673
270
    }
Unexecuted instantiation: _ZN3scn2v34impl20reader_impl_for_charIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERcNSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20reader_impl_for_charIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERcNSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20reader_impl_for_charIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERcNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl20reader_impl_for_charIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERcNS9_10locale_refE
5674
};
5675
5676
template <typename CharT>
5677
class reader_impl_for_wchar : public char_reader_base<wchar_t> {
5678
public:
5679
    template <typename Range>
5680
    auto read_default(Range range, wchar_t& value, detail::locale_ref loc)
5681
        -> scan_expected<ranges::const_iterator_t<Range>>
5682
13.5k
    {
5683
13.5k
        SCN_UNUSED(loc);
5684
13.5k
        if constexpr (std::is_same_v<CharT, char>) {
5685
0
            return code_point_reader<wchar_t>{}.read(range, value);
5686
        }
5687
13.5k
        else {
5688
13.5k
            return code_unit_reader<wchar_t>{}.read(range, value);
5689
13.5k
        }
5690
13.5k
    }
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_wcharIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RwNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_wcharIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RwNS9_10locale_refE
_ZN3scn2v34impl21reader_impl_for_wcharIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RwNS0_6detail10locale_refE
Line
Count
Source
5682
120
    {
5683
120
        SCN_UNUSED(loc);
5684
        if constexpr (std::is_same_v<CharT, char>) {
5685
            return code_point_reader<wchar_t>{}.read(range, value);
5686
        }
5687
120
        else {
5688
120
            return code_unit_reader<wchar_t>{}.read(range, value);
5689
120
        }
5690
120
    }
_ZN3scn2v34impl21reader_impl_for_wcharIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RwNS0_6detail10locale_refE
Line
Count
Source
5682
13.4k
    {
5683
13.4k
        SCN_UNUSED(loc);
5684
        if constexpr (std::is_same_v<CharT, char>) {
5685
            return code_point_reader<wchar_t>{}.read(range, value);
5686
        }
5687
13.4k
        else {
5688
13.4k
            return code_unit_reader<wchar_t>{}.read(range, value);
5689
13.4k
        }
5690
13.4k
    }
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_wcharIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RwNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_wcharIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RwNS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_wcharIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RwNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_wcharIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RwNSA_10locale_refE
5691
5692
    template <typename Range>
5693
    auto read_specs(Range range,
5694
                    const detail::format_specs& specs,
5695
                    wchar_t& value,
5696
                    detail::locale_ref loc)
5697
        -> scan_expected<ranges::const_iterator_t<Range>>
5698
482
    {
5699
482
        if (specs.type == detail::presentation_type::none ||
5700
482
            specs.type == detail::presentation_type::character) {
5701
442
            return read_default(range, value, loc);
5702
442
        }
5703
5704
40
        reader_impl_for_int<CharT> reader{};
5705
40
        using integer_type =
5706
40
            std::conditional_t<sizeof(wchar_t) == 2, int16_t, int32_t>;
5707
40
        integer_type tmp_value{};
5708
40
        auto ret = reader.read_specs(range, specs, tmp_value, loc);
5709
40
        value = static_cast<integer_type>(value);
5710
40
        return ret;
5711
482
    }
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_wcharIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERwNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_wcharIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERwNS9_10locale_refE
_ZN3scn2v34impl21reader_impl_for_wcharIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERwNSN_10locale_refE
Line
Count
Source
5698
140
    {
5699
140
        if (specs.type == detail::presentation_type::none ||
5700
140
            specs.type == detail::presentation_type::character) {
5701
120
            return read_default(range, value, loc);
5702
120
        }
5703
5704
20
        reader_impl_for_int<CharT> reader{};
5705
20
        using integer_type =
5706
20
            std::conditional_t<sizeof(wchar_t) == 2, int16_t, int32_t>;
5707
20
        integer_type tmp_value{};
5708
20
        auto ret = reader.read_specs(range, specs, tmp_value, loc);
5709
20
        value = static_cast<integer_type>(value);
5710
20
        return ret;
5711
140
    }
_ZN3scn2v34impl21reader_impl_for_wcharIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERwNSL_10locale_refE
Line
Count
Source
5698
342
    {
5699
342
        if (specs.type == detail::presentation_type::none ||
5700
342
            specs.type == detail::presentation_type::character) {
5701
322
            return read_default(range, value, loc);
5702
322
        }
5703
5704
20
        reader_impl_for_int<CharT> reader{};
5705
20
        using integer_type =
5706
20
            std::conditional_t<sizeof(wchar_t) == 2, int16_t, int32_t>;
5707
20
        integer_type tmp_value{};
5708
20
        auto ret = reader.read_specs(range, specs, tmp_value, loc);
5709
20
        value = static_cast<integer_type>(value);
5710
20
        return ret;
5711
342
    }
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_wcharIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERwNSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_wcharIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERwNSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_wcharIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERwNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl21reader_impl_for_wcharIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERwNS9_10locale_refE
5712
};
5713
5714
template <typename CharT>
5715
class reader_impl_for_code_point : public char_reader_base<char32_t> {
5716
public:
5717
    template <typename Range>
5718
    auto read_default(Range range, char32_t& value, detail::locale_ref loc)
5719
        -> scan_expected<ranges::const_iterator_t<Range>>
5720
0
    {
5721
0
        SCN_UNUSED(loc);
5722
0
        return code_point_reader<char32_t>{}.read(range, value);
5723
0
    }
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RDiNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RDiNS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RDiNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RDiNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RDiNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RDiNS0_6detail10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RDiNS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RDiNSA_10locale_refE
5724
5725
    template <typename Range>
5726
    auto read_specs(Range range,
5727
                    const detail::format_specs& specs,
5728
                    char32_t& value,
5729
                    detail::locale_ref loc)
5730
        -> scan_expected<ranges::const_iterator_t<Range>>
5731
0
    {
5732
0
        SCN_UNUSED(specs);
5733
0
        return read_default(range, value, loc);
5734
0
    }
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERDiNSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERDiNSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERDiNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERDiNS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERDiNSN_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERDiNSL_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERDiNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl26reader_impl_for_code_pointIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERDiNS9_10locale_refE
5735
};
5736
5737
/////////////////////////////////////////////////////////////////
5738
// Pointer reader
5739
/////////////////////////////////////////////////////////////////
5740
5741
template <typename CharT>
5742
class reader_impl_for_voidptr {
5743
public:
5744
    constexpr reader_impl_for_voidptr() = default;
5745
5746
    bool skip_ws_before_read() const
5747
14.6k
    {
5748
14.6k
        return true;
5749
14.6k
    }
scn::v3::impl::reader_impl_for_voidptr<char>::skip_ws_before_read() const
Line
Count
Source
5747
1.14k
    {
5748
1.14k
        return true;
5749
1.14k
    }
scn::v3::impl::reader_impl_for_voidptr<wchar_t>::skip_ws_before_read() const
Line
Count
Source
5747
13.5k
    {
5748
13.5k
        return true;
5749
13.5k
    }
5750
5751
    static scan_error check_specs(const detail::format_specs& specs)
5752
10.3k
    {
5753
10.3k
        reader_error_handler eh{};
5754
10.3k
        detail::check_pointer_type_specs(specs, eh);
5755
10.3k
        if (SCN_UNLIKELY(!eh)) {
5756
9.42k
            return {scan_error::invalid_format_string, eh.m_msg};
5757
9.42k
        }
5758
960
        return {};
5759
10.3k
    }
scn::v3::impl::reader_impl_for_voidptr<char>::check_specs(scn::v3::detail::format_specs const&)
Line
Count
Source
5752
7.13k
    {
5753
7.13k
        reader_error_handler eh{};
5754
7.13k
        detail::check_pointer_type_specs(specs, eh);
5755
7.13k
        if (SCN_UNLIKELY(!eh)) {
5756
6.62k
            return {scan_error::invalid_format_string, eh.m_msg};
5757
6.62k
        }
5758
512
        return {};
5759
7.13k
    }
scn::v3::impl::reader_impl_for_voidptr<wchar_t>::check_specs(scn::v3::detail::format_specs const&)
Line
Count
Source
5752
3.25k
    {
5753
3.25k
        reader_error_handler eh{};
5754
3.25k
        detail::check_pointer_type_specs(specs, eh);
5755
3.25k
        if (SCN_UNLIKELY(!eh)) {
5756
2.80k
            return {scan_error::invalid_format_string, eh.m_msg};
5757
2.80k
        }
5758
448
        return {};
5759
3.25k
    }
5760
5761
    template <typename Range>
5762
    auto read_default(Range range, void*& value, detail::locale_ref loc)
5763
        -> scan_expected<ranges::const_iterator_t<Range>>
5764
14.6k
    {
5765
14.6k
        detail::format_specs specs{};
5766
14.6k
        specs.type = detail::presentation_type::int_hex;
5767
5768
14.6k
        std::uintptr_t intvalue{};
5769
14.6k
        SCN_TRY(result, reader_impl_for_int<CharT>{}.read_specs(range, specs,
5770
0
                                                                intvalue, loc));
5771
0
        value = reinterpret_cast<void*>(intvalue);
5772
0
        return result;
5773
14.6k
    }
_ZN3scn2v34impl23reader_impl_for_voidptrIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RPvNS0_6detail10locale_refE
Line
Count
Source
5764
886
    {
5765
886
        detail::format_specs specs{};
5766
886
        specs.type = detail::presentation_type::int_hex;
5767
5768
886
        std::uintptr_t intvalue{};
5769
886
        SCN_TRY(result, reader_impl_for_int<CharT>{}.read_specs(range, specs,
5770
0
                                                                intvalue, loc));
5771
0
        value = reinterpret_cast<void*>(intvalue);
5772
0
        return result;
5773
886
    }
Unexecuted instantiation: _ZN3scn2v34impl23reader_impl_for_voidptrIcE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RPvNS9_10locale_refE
_ZN3scn2v34impl23reader_impl_for_voidptrIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RPvNS0_6detail10locale_refE
Line
Count
Source
5764
240
    {
5765
240
        detail::format_specs specs{};
5766
240
        specs.type = detail::presentation_type::int_hex;
5767
5768
240
        std::uintptr_t intvalue{};
5769
240
        SCN_TRY(result, reader_impl_for_int<CharT>{}.read_specs(range, specs,
5770
0
                                                                intvalue, loc));
5771
0
        value = reinterpret_cast<void*>(intvalue);
5772
0
        return result;
5773
240
    }
Unexecuted instantiation: _ZN3scn2v34impl23reader_impl_for_voidptrIcE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RPvNSA_10locale_refE
_ZN3scn2v34impl23reader_impl_for_voidptrIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RPvNS0_6detail10locale_refE
Line
Count
Source
5764
13.4k
    {
5765
13.4k
        detail::format_specs specs{};
5766
13.4k
        specs.type = detail::presentation_type::int_hex;
5767
5768
13.4k
        std::uintptr_t intvalue{};
5769
13.4k
        SCN_TRY(result, reader_impl_for_int<CharT>{}.read_specs(range, specs,
5770
0
                                                                intvalue, loc));
5771
0
        value = reinterpret_cast<void*>(intvalue);
5772
0
        return result;
5773
13.4k
    }
_ZN3scn2v34impl23reader_impl_for_voidptrIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RPvNS0_6detail10locale_refE
Line
Count
Source
5764
122
    {
5765
122
        detail::format_specs specs{};
5766
122
        specs.type = detail::presentation_type::int_hex;
5767
5768
122
        std::uintptr_t intvalue{};
5769
122
        SCN_TRY(result, reader_impl_for_int<CharT>{}.read_specs(range, specs,
5770
0
                                                                intvalue, loc));
5771
0
        value = reinterpret_cast<void*>(intvalue);
5772
0
        return result;
5773
122
    }
Unexecuted instantiation: _ZN3scn2v34impl23reader_impl_for_voidptrIwE12read_defaultINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RPvNS9_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl23reader_impl_for_voidptrIwE12read_defaultINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RPvNSA_10locale_refE
5774
5775
    template <typename Range>
5776
    auto read_specs(Range range,
5777
                    const detail::format_specs& specs,
5778
                    void*& value,
5779
                    detail::locale_ref loc)
5780
        -> scan_expected<ranges::const_iterator_t<Range>>
5781
938
    {
5782
938
        SCN_UNUSED(specs);
5783
938
        return read_default(range, value, loc);
5784
938
    }
_ZN3scn2v34impl23reader_impl_for_voidptrIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERPvNSN_10locale_refE
Line
Count
Source
5781
240
    {
5782
240
        SCN_UNUSED(specs);
5783
240
        return read_default(range, value, loc);
5784
240
    }
_ZN3scn2v34impl23reader_impl_for_voidptrIcE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKcSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERPvNSL_10locale_refE
Line
Count
Source
5781
252
    {
5782
252
        SCN_UNUSED(specs);
5783
252
        return read_default(range, value, loc);
5784
252
    }
Unexecuted instantiation: _ZN3scn2v34impl23reader_impl_for_voidptrIcE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERPvNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl23reader_impl_for_voidptrIcE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERPvNS9_10locale_refE
_ZN3scn2v34impl23reader_impl_for_voidptrIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSB_EEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESH_RKNS0_6detail12format_specsERPvNSN_10locale_refE
Line
Count
Source
5781
122
    {
5782
122
        SCN_UNUSED(specs);
5783
122
        return read_default(range, value, loc);
5784
122
    }
_ZN3scn2v34impl23reader_impl_for_voidptrIwE10read_specsINS0_6ranges6detail9subrange_8subrangeIPKwSA_EEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESF_RKNS0_6detail12format_specsERPvNSL_10locale_refE
Line
Count
Source
5781
324
    {
5782
324
        SCN_UNUSED(specs);
5783
324
        return read_default(range, value, loc);
5784
324
    }
Unexecuted instantiation: _ZN3scn2v34impl23reader_impl_for_voidptrIwE10read_specsINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS6_18default_sentinel_tEEEEEEENS0_13scan_expectedIDTclL_ZNS6_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESK_RKNSA_12format_specsERPvNSA_10locale_refE
Unexecuted instantiation: _ZN3scn2v34impl23reader_impl_for_voidptrIwE10read_specsINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS5_18default_sentinel_tEEEEENS0_13scan_expectedIDTclL_ZNS5_5beginEEclsr3stdE7declvalIRNSt3__19add_constIT_E4typeEEEEEEESI_RKNS9_12format_specsERPvNS9_10locale_refE
5785
};
5786
5787
/////////////////////////////////////////////////////////////////
5788
// Argument readers
5789
/////////////////////////////////////////////////////////////////
5790
5791
template <typename Range>
5792
auto skip_ws_before_if_required(bool is_required, Range range)
5793
    -> eof_expected<ranges::iterator_t<Range>>
5794
123k
{
5795
123k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
5796
0
        return unexpected(e);
5797
0
    }
5798
5799
123k
    if (!is_required) {
5800
13.7k
        return range.begin();
5801
13.7k
    }
5802
5803
109k
    return skip_classic_whitespace(range);
5804
123k
}
_ZN3scn2v34impl26skip_ws_before_if_requiredINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEEEEbSB_
Line
Count
Source
5794
5.70k
{
5795
5.70k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
5796
0
        return unexpected(e);
5797
0
    }
5798
5799
5.70k
    if (!is_required) {
5800
634
        return range.begin();
5801
634
    }
5802
5803
5.07k
    return skip_classic_whitespace(range);
5804
5.70k
}
Unexecuted instantiation: _ZN3scn2v34impl26skip_ws_before_if_requiredINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEEEEbSE_
Unexecuted instantiation: _ZN3scn2v34impl26skip_ws_before_if_requiredINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEEEEbSA_
_ZN3scn2v34impl26skip_ws_before_if_requiredINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEEEEbSB_
Line
Count
Source
5794
117k
{
5795
117k
    if (auto e = eof_check(range); SCN_UNLIKELY(!e)) {
5796
0
        return unexpected(e);
5797
0
    }
5798
5799
117k
    if (!is_required) {
5800
13.0k
        return range.begin();
5801
13.0k
    }
5802
5803
104k
    return skip_classic_whitespace(range);
5804
117k
}
Unexecuted instantiation: _ZN3scn2v34impl26skip_ws_before_if_requiredINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS1_12eof_expectedIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEEEEbSE_
Unexecuted instantiation: _ZN3scn2v34impl26skip_ws_before_if_requiredINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEENS1_12eof_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEEEEbSA_
5805
5806
template <typename T, typename CharT>
5807
constexpr auto make_reader()
5808
72.3k
{
5809
    if constexpr (std::is_same_v<T, bool>) {
5810
        return reader_impl_for_bool<CharT>{};
5811
    }
5812
    else if constexpr (std::is_same_v<T, char>) {
5813
        return reader_impl_for_char<CharT>{};
5814
    }
5815
    else if constexpr (std::is_same_v<T, wchar_t>) {
5816
        return reader_impl_for_wchar<CharT>{};
5817
    }
5818
    else if constexpr (std::is_same_v<T, char32_t>) {
5819
        return reader_impl_for_code_point<CharT>{};
5820
    }
5821
    else if constexpr (std::is_same_v<T, std::string_view> ||
5822
24.1k
                       std::is_same_v<T, std::wstring_view>) {
5823
24.1k
        return reader_impl_for_string<CharT>{};
5824
    }
5825
    else if constexpr (std::is_same_v<T, std::string> ||
5826
48.2k
                       std::is_same_v<T, std::wstring>) {
5827
48.2k
        return reader_impl_for_string<CharT>{};
5828
    }
5829
    else if constexpr (std::is_same_v<T, regex_matches> ||
5830
                       std::is_same_v<T, wregex_matches>) {
5831
        return reader_impl_for_regex_matches<CharT>{};
5832
    }
5833
    else if constexpr (std::is_same_v<T, void*>) {
5834
        return reader_impl_for_voidptr<CharT>{};
5835
    }
5836
    else if constexpr (std::is_floating_point_v<T>) {
5837
        return reader_impl_for_float<CharT>{};
5838
    }
5839
    else if constexpr (std::is_integral_v<T> && !std::is_same_v<T, char> &&
5840
                       !std::is_same_v<T, wchar_t> &&
5841
                       !std::is_same_v<T, char32_t> &&
5842
                       !std::is_same_v<T, bool>) {
5843
        return reader_impl_for_int<CharT>{};
5844
    }
5845
    else {
5846
        return reader_impl_for_monostate<CharT>{};
5847
    }
5848
72.3k
}
auto scn::v3::impl::make_reader<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, char>()
Line
Count
Source
5808
7.76k
{
5809
    if constexpr (std::is_same_v<T, bool>) {
5810
        return reader_impl_for_bool<CharT>{};
5811
    }
5812
    else if constexpr (std::is_same_v<T, char>) {
5813
        return reader_impl_for_char<CharT>{};
5814
    }
5815
    else if constexpr (std::is_same_v<T, wchar_t>) {
5816
        return reader_impl_for_wchar<CharT>{};
5817
    }
5818
    else if constexpr (std::is_same_v<T, char32_t>) {
5819
        return reader_impl_for_code_point<CharT>{};
5820
    }
5821
    else if constexpr (std::is_same_v<T, std::string_view> ||
5822
                       std::is_same_v<T, std::wstring_view>) {
5823
        return reader_impl_for_string<CharT>{};
5824
    }
5825
    else if constexpr (std::is_same_v<T, std::string> ||
5826
7.76k
                       std::is_same_v<T, std::wstring>) {
5827
7.76k
        return reader_impl_for_string<CharT>{};
5828
    }
5829
    else if constexpr (std::is_same_v<T, regex_matches> ||
5830
                       std::is_same_v<T, wregex_matches>) {
5831
        return reader_impl_for_regex_matches<CharT>{};
5832
    }
5833
    else if constexpr (std::is_same_v<T, void*>) {
5834
        return reader_impl_for_voidptr<CharT>{};
5835
    }
5836
    else if constexpr (std::is_floating_point_v<T>) {
5837
        return reader_impl_for_float<CharT>{};
5838
    }
5839
    else if constexpr (std::is_integral_v<T> && !std::is_same_v<T, char> &&
5840
                       !std::is_same_v<T, wchar_t> &&
5841
                       !std::is_same_v<T, char32_t> &&
5842
                       !std::is_same_v<T, bool>) {
5843
        return reader_impl_for_int<CharT>{};
5844
    }
5845
    else {
5846
        return reader_impl_for_monostate<CharT>{};
5847
    }
5848
7.76k
}
auto scn::v3::impl::make_reader<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, char>()
Line
Count
Source
5808
7.76k
{
5809
    if constexpr (std::is_same_v<T, bool>) {
5810
        return reader_impl_for_bool<CharT>{};
5811
    }
5812
    else if constexpr (std::is_same_v<T, char>) {
5813
        return reader_impl_for_char<CharT>{};
5814
    }
5815
    else if constexpr (std::is_same_v<T, wchar_t>) {
5816
        return reader_impl_for_wchar<CharT>{};
5817
    }
5818
    else if constexpr (std::is_same_v<T, char32_t>) {
5819
        return reader_impl_for_code_point<CharT>{};
5820
    }
5821
    else if constexpr (std::is_same_v<T, std::string_view> ||
5822
                       std::is_same_v<T, std::wstring_view>) {
5823
        return reader_impl_for_string<CharT>{};
5824
    }
5825
    else if constexpr (std::is_same_v<T, std::string> ||
5826
7.76k
                       std::is_same_v<T, std::wstring>) {
5827
7.76k
        return reader_impl_for_string<CharT>{};
5828
    }
5829
    else if constexpr (std::is_same_v<T, regex_matches> ||
5830
                       std::is_same_v<T, wregex_matches>) {
5831
        return reader_impl_for_regex_matches<CharT>{};
5832
    }
5833
    else if constexpr (std::is_same_v<T, void*>) {
5834
        return reader_impl_for_voidptr<CharT>{};
5835
    }
5836
    else if constexpr (std::is_floating_point_v<T>) {
5837
        return reader_impl_for_float<CharT>{};
5838
    }
5839
    else if constexpr (std::is_integral_v<T> && !std::is_same_v<T, char> &&
5840
                       !std::is_same_v<T, wchar_t> &&
5841
                       !std::is_same_v<T, char32_t> &&
5842
                       !std::is_same_v<T, bool>) {
5843
        return reader_impl_for_int<CharT>{};
5844
    }
5845
    else {
5846
        return reader_impl_for_monostate<CharT>{};
5847
    }
5848
7.76k
}
auto scn::v3::impl::make_reader<std::__1::basic_string_view<char, std::__1::char_traits<char> >, char>()
Line
Count
Source
5808
7.76k
{
5809
    if constexpr (std::is_same_v<T, bool>) {
5810
        return reader_impl_for_bool<CharT>{};
5811
    }
5812
    else if constexpr (std::is_same_v<T, char>) {
5813
        return reader_impl_for_char<CharT>{};
5814
    }
5815
    else if constexpr (std::is_same_v<T, wchar_t>) {
5816
        return reader_impl_for_wchar<CharT>{};
5817
    }
5818
    else if constexpr (std::is_same_v<T, char32_t>) {
5819
        return reader_impl_for_code_point<CharT>{};
5820
    }
5821
    else if constexpr (std::is_same_v<T, std::string_view> ||
5822
7.76k
                       std::is_same_v<T, std::wstring_view>) {
5823
7.76k
        return reader_impl_for_string<CharT>{};
5824
    }
5825
    else if constexpr (std::is_same_v<T, std::string> ||
5826
                       std::is_same_v<T, std::wstring>) {
5827
        return reader_impl_for_string<CharT>{};
5828
    }
5829
    else if constexpr (std::is_same_v<T, regex_matches> ||
5830
                       std::is_same_v<T, wregex_matches>) {
5831
        return reader_impl_for_regex_matches<CharT>{};
5832
    }
5833
    else if constexpr (std::is_same_v<T, void*>) {
5834
        return reader_impl_for_voidptr<CharT>{};
5835
    }
5836
    else if constexpr (std::is_floating_point_v<T>) {
5837
        return reader_impl_for_float<CharT>{};
5838
    }
5839
    else if constexpr (std::is_integral_v<T> && !std::is_same_v<T, char> &&
5840
                       !std::is_same_v<T, wchar_t> &&
5841
                       !std::is_same_v<T, char32_t> &&
5842
                       !std::is_same_v<T, bool>) {
5843
        return reader_impl_for_int<CharT>{};
5844
    }
5845
    else {
5846
        return reader_impl_for_monostate<CharT>{};
5847
    }
5848
7.76k
}
Unexecuted instantiation: auto scn::v3::impl::make_reader<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, char>()
auto scn::v3::impl::make_reader<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, wchar_t>()
Line
Count
Source
5808
16.3k
{
5809
    if constexpr (std::is_same_v<T, bool>) {
5810
        return reader_impl_for_bool<CharT>{};
5811
    }
5812
    else if constexpr (std::is_same_v<T, char>) {
5813
        return reader_impl_for_char<CharT>{};
5814
    }
5815
    else if constexpr (std::is_same_v<T, wchar_t>) {
5816
        return reader_impl_for_wchar<CharT>{};
5817
    }
5818
    else if constexpr (std::is_same_v<T, char32_t>) {
5819
        return reader_impl_for_code_point<CharT>{};
5820
    }
5821
    else if constexpr (std::is_same_v<T, std::string_view> ||
5822
                       std::is_same_v<T, std::wstring_view>) {
5823
        return reader_impl_for_string<CharT>{};
5824
    }
5825
    else if constexpr (std::is_same_v<T, std::string> ||
5826
16.3k
                       std::is_same_v<T, std::wstring>) {
5827
16.3k
        return reader_impl_for_string<CharT>{};
5828
    }
5829
    else if constexpr (std::is_same_v<T, regex_matches> ||
5830
                       std::is_same_v<T, wregex_matches>) {
5831
        return reader_impl_for_regex_matches<CharT>{};
5832
    }
5833
    else if constexpr (std::is_same_v<T, void*>) {
5834
        return reader_impl_for_voidptr<CharT>{};
5835
    }
5836
    else if constexpr (std::is_floating_point_v<T>) {
5837
        return reader_impl_for_float<CharT>{};
5838
    }
5839
    else if constexpr (std::is_integral_v<T> && !std::is_same_v<T, char> &&
5840
                       !std::is_same_v<T, wchar_t> &&
5841
                       !std::is_same_v<T, char32_t> &&
5842
                       !std::is_same_v<T, bool>) {
5843
        return reader_impl_for_int<CharT>{};
5844
    }
5845
    else {
5846
        return reader_impl_for_monostate<CharT>{};
5847
    }
5848
16.3k
}
auto scn::v3::impl::make_reader<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, wchar_t>()
Line
Count
Source
5808
16.3k
{
5809
    if constexpr (std::is_same_v<T, bool>) {
5810
        return reader_impl_for_bool<CharT>{};
5811
    }
5812
    else if constexpr (std::is_same_v<T, char>) {
5813
        return reader_impl_for_char<CharT>{};
5814
    }
5815
    else if constexpr (std::is_same_v<T, wchar_t>) {
5816
        return reader_impl_for_wchar<CharT>{};
5817
    }
5818
    else if constexpr (std::is_same_v<T, char32_t>) {
5819
        return reader_impl_for_code_point<CharT>{};
5820
    }
5821
    else if constexpr (std::is_same_v<T, std::string_view> ||
5822
                       std::is_same_v<T, std::wstring_view>) {
5823
        return reader_impl_for_string<CharT>{};
5824
    }
5825
    else if constexpr (std::is_same_v<T, std::string> ||
5826
16.3k
                       std::is_same_v<T, std::wstring>) {
5827
16.3k
        return reader_impl_for_string<CharT>{};
5828
    }
5829
    else if constexpr (std::is_same_v<T, regex_matches> ||
5830
                       std::is_same_v<T, wregex_matches>) {
5831
        return reader_impl_for_regex_matches<CharT>{};
5832
    }
5833
    else if constexpr (std::is_same_v<T, void*>) {
5834
        return reader_impl_for_voidptr<CharT>{};
5835
    }
5836
    else if constexpr (std::is_floating_point_v<T>) {
5837
        return reader_impl_for_float<CharT>{};
5838
    }
5839
    else if constexpr (std::is_integral_v<T> && !std::is_same_v<T, char> &&
5840
                       !std::is_same_v<T, wchar_t> &&
5841
                       !std::is_same_v<T, char32_t> &&
5842
                       !std::is_same_v<T, bool>) {
5843
        return reader_impl_for_int<CharT>{};
5844
    }
5845
    else {
5846
        return reader_impl_for_monostate<CharT>{};
5847
    }
5848
16.3k
}
Unexecuted instantiation: auto scn::v3::impl::make_reader<std::__1::basic_string_view<char, std::__1::char_traits<char> >, wchar_t>()
auto scn::v3::impl::make_reader<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >, wchar_t>()
Line
Count
Source
5808
16.3k
{
5809
    if constexpr (std::is_same_v<T, bool>) {
5810
        return reader_impl_for_bool<CharT>{};
5811
    }
5812
    else if constexpr (std::is_same_v<T, char>) {
5813
        return reader_impl_for_char<CharT>{};
5814
    }
5815
    else if constexpr (std::is_same_v<T, wchar_t>) {
5816
        return reader_impl_for_wchar<CharT>{};
5817
    }
5818
    else if constexpr (std::is_same_v<T, char32_t>) {
5819
        return reader_impl_for_code_point<CharT>{};
5820
    }
5821
    else if constexpr (std::is_same_v<T, std::string_view> ||
5822
16.3k
                       std::is_same_v<T, std::wstring_view>) {
5823
16.3k
        return reader_impl_for_string<CharT>{};
5824
    }
5825
    else if constexpr (std::is_same_v<T, std::string> ||
5826
                       std::is_same_v<T, std::wstring>) {
5827
        return reader_impl_for_string<CharT>{};
5828
    }
5829
    else if constexpr (std::is_same_v<T, regex_matches> ||
5830
                       std::is_same_v<T, wregex_matches>) {
5831
        return reader_impl_for_regex_matches<CharT>{};
5832
    }
5833
    else if constexpr (std::is_same_v<T, void*>) {
5834
        return reader_impl_for_voidptr<CharT>{};
5835
    }
5836
    else if constexpr (std::is_floating_point_v<T>) {
5837
        return reader_impl_for_float<CharT>{};
5838
    }
5839
    else if constexpr (std::is_integral_v<T> && !std::is_same_v<T, char> &&
5840
                       !std::is_same_v<T, wchar_t> &&
5841
                       !std::is_same_v<T, char32_t> &&
5842
                       !std::is_same_v<T, bool>) {
5843
        return reader_impl_for_int<CharT>{};
5844
    }
5845
    else {
5846
        return reader_impl_for_monostate<CharT>{};
5847
    }
5848
16.3k
}
Unexecuted instantiation: auto scn::v3::impl::make_reader<char, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<signed char, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<short, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<int, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<long, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<long long, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<unsigned char, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<unsigned short, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<unsigned int, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<unsigned long, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<unsigned long long, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<float, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<double, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<long double, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<scn::v3::basic_regex_matches<char>, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<scn::v3::basic_regex_matches<wchar_t>, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<wchar_t, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<signed char, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<short, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<int, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<long, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<long long, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<unsigned char, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<unsigned short, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<unsigned int, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<unsigned long, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<unsigned long long, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<float, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<double, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<long double, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<scn::v3::basic_regex_matches<char>, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<scn::v3::basic_regex_matches<wchar_t>, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<void*, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<bool, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<wchar_t, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<char32_t, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<scn::v3::monostate, char>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<void*, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<bool, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<char, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<char32_t, wchar_t>()
Unexecuted instantiation: auto scn::v3::impl::make_reader<scn::v3::monostate, wchar_t>()
5849
5850
template <typename Context>
5851
struct default_arg_reader {
5852
    using context_type = Context;
5853
    using char_type = typename context_type::char_type;
5854
    using args_type = typename context_type::args_type;
5855
5856
    using range_type = typename context_type::range_type;
5857
    using iterator = ranges::iterator_t<range_type>;
5858
5859
    template <typename Reader, typename Range, typename T>
5860
    auto impl(Reader& rd, Range rng, T& value)
5861
        -> scan_expected<ranges::iterator_t<Range>>
5862
123k
    {
5863
123k
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
123k
                        .transform_error(make_eof_scan_error));
5865
123k
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
123k
    }
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEaEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEsEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5862
634
    {
5863
634
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
634
                        .transform_error(make_eof_scan_error));
5865
634
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
634
    }
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EElEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EExEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEhEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEtEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEjEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5862
634
    {
5863
634
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
634
                        .transform_error(make_eof_scan_error));
5865
634
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
634
    }
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEmEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEyEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_23reader_impl_for_voidptrIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEPvEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Line
Count
Source
5862
634
    {
5863
634
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
634
                        .transform_error(make_eof_scan_error));
5865
634
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
634
    }
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_20reader_impl_for_boolIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEbEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5862
634
    {
5863
634
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
634
                        .transform_error(make_eof_scan_error));
5865
634
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
634
    }
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_20reader_impl_for_charIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5862
634
    {
5863
634
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
634
                        .transform_error(make_eof_scan_error));
5865
634
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
634
    }
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_21reader_impl_for_wcharIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_26reader_impl_for_code_pointIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEDiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5862
634
    {
5863
634
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
634
                        .transform_error(make_eof_scan_error));
5865
634
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
634
    }
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EENSt3__117basic_string_viewIcNSG_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Line
Count
Source
5862
634
    {
5863
634
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
634
                        .transform_error(make_eof_scan_error));
5865
634
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
634
    }
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EENSt3__112basic_stringIcNSG_11char_traitsIcEENSG_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
5862
634
    {
5863
634
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
634
                        .transform_error(make_eof_scan_error));
5865
634
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
634
    }
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EENSt3__117basic_string_viewIwNSG_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EENSt3__112basic_stringIwNSG_11char_traitsIwEENSG_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
5862
634
    {
5863
634
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
634
                        .transform_error(make_eof_scan_error));
5865
634
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
634
    }
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_29reader_impl_for_regex_matchesIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_29reader_impl_for_regex_matchesIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_25reader_impl_for_monostateIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEaEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEsEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEElEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEExEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEhEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEtEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEjEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEmEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEyEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_23reader_impl_for_voidptrIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEPvEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_23reader_impl_for_voidptrIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEPvEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_20reader_impl_for_boolIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEbEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_20reader_impl_for_boolIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEbEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_20reader_impl_for_charIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_20reader_impl_for_charIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEcEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_wcharIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_wcharIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEwEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_26reader_impl_for_code_pointIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEDiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_26reader_impl_for_code_pointIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEDiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEfEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEdEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEeEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENSt3__117basic_string_viewIcNSJ_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SP_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEESD_EENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENSt3__112basic_stringIcNSJ_11char_traitsIcEENSJ_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SR_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEENS9_12basic_stringIcSC_NS9_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENSt3__117basic_string_viewIwNSJ_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SP_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEENSA_IwNSB_IwEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENSt3__112basic_stringIwNSJ_11char_traitsIwEENSJ_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SR_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEENS9_12basic_stringIwNSB_IwEENS9_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_29reader_impl_for_regex_matchesIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_29reader_impl_for_regex_matchesIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_29reader_impl_for_regex_matchesIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_29reader_impl_for_regex_matchesIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_25reader_impl_for_monostateIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIcEEE4implINS1_25reader_impl_for_monostateIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEaEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEsEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5862
13.0k
    {
5863
13.0k
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
13.0k
                        .transform_error(make_eof_scan_error));
5865
13.0k
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
13.0k
    }
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EElEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EExEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEhEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEtEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEjEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5862
13.0k
    {
5863
13.0k
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
13.0k
                        .transform_error(make_eof_scan_error));
5865
13.0k
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
13.0k
    }
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEmEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEyEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_23reader_impl_for_voidptrIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEPvEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Line
Count
Source
5862
13.0k
    {
5863
13.0k
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
13.0k
                        .transform_error(make_eof_scan_error));
5865
13.0k
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
13.0k
    }
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_20reader_impl_for_boolIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEbEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5862
13.0k
    {
5863
13.0k
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
13.0k
                        .transform_error(make_eof_scan_error));
5865
13.0k
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
13.0k
    }
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_20reader_impl_for_charIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_21reader_impl_for_wcharIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5862
13.0k
    {
5863
13.0k
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
13.0k
                        .transform_error(make_eof_scan_error));
5865
13.0k
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
13.0k
    }
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_26reader_impl_for_code_pointIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEDiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
5862
13.0k
    {
5863
13.0k
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
13.0k
                        .transform_error(make_eof_scan_error));
5865
13.0k
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
13.0k
    }
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EENSt3__117basic_string_viewIcNSG_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EENSt3__112basic_stringIcNSG_11char_traitsIcEENSG_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
5862
13.0k
    {
5863
13.0k
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
13.0k
                        .transform_error(make_eof_scan_error));
5865
13.0k
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
13.0k
    }
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EENSt3__117basic_string_viewIwNSG_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Line
Count
Source
5862
13.0k
    {
5863
13.0k
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
13.0k
                        .transform_error(make_eof_scan_error));
5865
13.0k
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
13.0k
    }
_ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EENSt3__112basic_stringIwNSG_11char_traitsIwEENSG_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
5862
13.0k
    {
5863
13.0k
        SCN_TRY(it, skip_ws_before_if_required(rd.skip_ws_before_read(), rng)
5864
13.0k
                        .transform_error(make_eof_scan_error));
5865
13.0k
        return rd.read_default(ranges::subrange{it, rng.end()}, value, loc);
5866
13.0k
    }
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_29reader_impl_for_regex_matchesIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_29reader_impl_for_regex_matchesIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_25reader_impl_for_monostateIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEaEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEsEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEElEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEExEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEhEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEtEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEjEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEmEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEyEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_23reader_impl_for_voidptrIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEPvEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_23reader_impl_for_voidptrIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEPvEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_20reader_impl_for_boolIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEbEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_20reader_impl_for_boolIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEbEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_20reader_impl_for_charIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_20reader_impl_for_charIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEcEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_wcharIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_wcharIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEwEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_26reader_impl_for_code_pointIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEDiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_26reader_impl_for_code_pointIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEDiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEfEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEdEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEeEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENSt3__117basic_string_viewIcNSJ_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SP_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEENSA_IcNSB_IcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENSt3__112basic_stringIcNSJ_11char_traitsIcEENSJ_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SR_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEENS9_12basic_stringIcNSB_IcEENS9_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENSt3__117basic_string_viewIwNSJ_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SP_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEESD_EENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENSt3__112basic_stringIwNSJ_11char_traitsIwEENSJ_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SR_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEENS9_12basic_stringIwSC_NS9_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_29reader_impl_for_regex_matchesIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_29reader_impl_for_regex_matchesIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_29reader_impl_for_regex_matchesIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_29reader_impl_for_regex_matchesIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_25reader_impl_for_monostateIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v34impl18default_arg_readerINS0_18basic_scan_contextIwEEE4implINS1_25reader_impl_for_monostateIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
5867
5868
    template <typename T>
5869
    scan_expected<iterator> operator()(T& value)
5870
123k
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
123k
                          basic_contiguous_scan_context<char_type>>) {
5875
123k
            auto rd = make_reader<T, char_type>();
5876
123k
            return impl(rd, range, value);
5877
        }
5878
0
        else if constexpr (!detail::is_type_disabled<T>) {
5879
0
            auto rd = make_reader<T, char_type>();
5880
0
            if (!is_segment_contiguous(range)) {
5881
0
                return impl(rd, range, value);
5882
0
            }
5883
0
            auto crange = get_as_contiguous(range);
5884
0
            SCN_TRY(it, impl(rd, crange, value));
5885
0
            return ranges::next(range.begin(),
5886
0
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
123k
    }
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<short>(short&)
scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<int>(int&)
Line
Count
Source
5870
634
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
634
                          basic_contiguous_scan_context<char_type>>) {
5875
634
            auto rd = make_reader<T, char_type>();
5876
634
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
634
    }
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<long>(long&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<unsigned short>(unsigned short&)
scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<unsigned int>(unsigned int&)
Line
Count
Source
5870
634
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
634
                          basic_contiguous_scan_context<char_type>>) {
5875
634
            auto rd = make_reader<T, char_type>();
5876
634
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
634
    }
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<unsigned long long>(unsigned long long&)
scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<void*>(void*&)
Line
Count
Source
5870
634
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
634
                          basic_contiguous_scan_context<char_type>>) {
5875
634
            auto rd = make_reader<T, char_type>();
5876
634
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
634
    }
scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<bool>(bool&)
Line
Count
Source
5870
634
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
634
                          basic_contiguous_scan_context<char_type>>) {
5875
634
            auto rd = make_reader<T, char_type>();
5876
634
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
634
    }
scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<char>(char&)
Line
Count
Source
5870
634
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
634
                          basic_contiguous_scan_context<char_type>>) {
5875
634
            auto rd = make_reader<T, char_type>();
5876
634
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
634
    }
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<wchar_t>(wchar_t&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<float>(float&)
scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<double>(double&)
Line
Count
Source
5870
634
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
634
                          basic_contiguous_scan_context<char_type>>) {
5875
634
            auto rd = make_reader<T, char_type>();
5876
634
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
634
    }
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<long double>(long double&)
scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
Line
Count
Source
5870
634
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
634
                          basic_contiguous_scan_context<char_type>>) {
5875
634
            auto rd = make_reader<T, char_type>();
5876
634
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
634
    }
scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
5870
634
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
634
                          basic_contiguous_scan_context<char_type>>) {
5875
634
            auto rd = make_reader<T, char_type>();
5876
634
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
634
    }
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
5870
634
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
634
                          basic_contiguous_scan_context<char_type>>) {
5875
634
            auto rd = make_reader<T, char_type>();
5876
634
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
634
    }
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<scn::v3::basic_regex_matches<char> >(scn::v3::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<scn::v3::basic_regex_matches<wchar_t> >(scn::v3::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<scn::v3::monostate>(scn::v3::monostate&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<short>(short&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<int>(int&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<long>(long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<unsigned short>(unsigned short&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<unsigned int>(unsigned int&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<unsigned long long>(unsigned long long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<void*>(void*&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<bool>(bool&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<char>(char&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<wchar_t>(wchar_t&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<float>(float&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<double>(double&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<long double>(long double&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<scn::v3::basic_regex_matches<char> >(scn::v3::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<scn::v3::basic_regex_matches<wchar_t> >(scn::v3::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()<scn::v3::monostate>(scn::v3::monostate&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<short>(short&)
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<int>(int&)
Line
Count
Source
5870
13.0k
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
13.0k
                          basic_contiguous_scan_context<char_type>>) {
5875
13.0k
            auto rd = make_reader<T, char_type>();
5876
13.0k
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
13.0k
    }
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<long>(long&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<unsigned short>(unsigned short&)
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<unsigned int>(unsigned int&)
Line
Count
Source
5870
13.0k
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
13.0k
                          basic_contiguous_scan_context<char_type>>) {
5875
13.0k
            auto rd = make_reader<T, char_type>();
5876
13.0k
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
13.0k
    }
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<unsigned long long>(unsigned long long&)
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<void*>(void*&)
Line
Count
Source
5870
13.0k
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
13.0k
                          basic_contiguous_scan_context<char_type>>) {
5875
13.0k
            auto rd = make_reader<T, char_type>();
5876
13.0k
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
13.0k
    }
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<bool>(bool&)
Line
Count
Source
5870
13.0k
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
13.0k
                          basic_contiguous_scan_context<char_type>>) {
5875
13.0k
            auto rd = make_reader<T, char_type>();
5876
13.0k
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
13.0k
    }
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<char>(char&)
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<wchar_t>(wchar_t&)
Line
Count
Source
5870
13.0k
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
13.0k
                          basic_contiguous_scan_context<char_type>>) {
5875
13.0k
            auto rd = make_reader<T, char_type>();
5876
13.0k
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
13.0k
    }
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<float>(float&)
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<double>(double&)
Line
Count
Source
5870
13.0k
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
13.0k
                          basic_contiguous_scan_context<char_type>>) {
5875
13.0k
            auto rd = make_reader<T, char_type>();
5876
13.0k
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
13.0k
    }
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<long double>(long double&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
5870
13.0k
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
13.0k
                          basic_contiguous_scan_context<char_type>>) {
5875
13.0k
            auto rd = make_reader<T, char_type>();
5876
13.0k
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
13.0k
    }
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
Line
Count
Source
5870
13.0k
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
13.0k
                          basic_contiguous_scan_context<char_type>>) {
5875
13.0k
            auto rd = make_reader<T, char_type>();
5876
13.0k
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
13.0k
    }
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
5870
13.0k
    {
5871
        if constexpr (!detail::is_type_disabled<T> &&
5872
                      std::is_same_v<
5873
                          context_type,
5874
13.0k
                          basic_contiguous_scan_context<char_type>>) {
5875
13.0k
            auto rd = make_reader<T, char_type>();
5876
13.0k
            return impl(rd, range, value);
5877
        }
5878
        else if constexpr (!detail::is_type_disabled<T>) {
5879
            auto rd = make_reader<T, char_type>();
5880
            if (!is_segment_contiguous(range)) {
5881
                return impl(rd, range, value);
5882
            }
5883
            auto crange = get_as_contiguous(range);
5884
            SCN_TRY(it, impl(rd, crange, value));
5885
            return ranges::next(range.begin(),
5886
                                ranges::distance(crange.begin(), it));
5887
        }
5888
        else {
5889
            SCN_EXPECT(false);
5890
            SCN_UNREACHABLE;
5891
        }
5892
13.0k
    }
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<scn::v3::basic_regex_matches<char> >(scn::v3::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<scn::v3::basic_regex_matches<wchar_t> >(scn::v3::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<scn::v3::monostate>(scn::v3::monostate&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<short>(short&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<int>(int&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<long>(long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<unsigned short>(unsigned short&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<unsigned int>(unsigned int&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<unsigned long long>(unsigned long long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<void*>(void*&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<bool>(bool&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<char>(char&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<wchar_t>(wchar_t&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<float>(float&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<double>(double&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<long double>(long double&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<scn::v3::basic_regex_matches<char> >(scn::v3::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<scn::v3::basic_regex_matches<wchar_t> >(scn::v3::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<scn::v3::monostate>(scn::v3::monostate&)
5893
5894
    basic_scan_context<char_type> make_custom_ctx()
5895
0
    {
5896
        if constexpr (std::is_same_v<
5897
                          context_type,
5898
0
                          basic_contiguous_scan_context<char_type>>) {
5899
0
            auto it =
5900
0
                typename detail::basic_scan_buffer<char_type>::forward_iterator{
5901
0
                    std::basic_string_view<char_type>(range.data(),
5902
0
                                                      range.size()),
5903
0
                    0};
5904
0
            return {it, args, loc};
5905
        }
5906
0
        else {
5907
0
            return {range.begin(), args, loc};
5908
0
        }
5909
0
    }
Unexecuted instantiation: scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::make_custom_ctx()
Unexecuted instantiation: scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::make_custom_ctx()
Unexecuted instantiation: scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::make_custom_ctx()
Unexecuted instantiation: scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::make_custom_ctx()
5910
5911
    scan_expected<iterator> operator()(
5912
        typename context_type::arg_type::handle h)
5913
0
    {
5914
0
        if constexpr (!detail::is_type_disabled<void>) {
5915
0
            basic_scan_parse_context<char_type> parse_ctx{{}};
5916
0
            auto ctx = make_custom_ctx();
5917
0
            if (auto e = h.scan(parse_ctx, ctx); !e) {
5918
0
                return unexpected(e);
5919
0
            }
5920
5921
            if constexpr (std::is_same_v<
5922
                              context_type,
5923
0
                              basic_contiguous_scan_context<char_type>>) {
5924
0
                return range.begin() + ctx.begin().position();
5925
            }
5926
0
            else {
5927
0
                return ctx.begin();
5928
0
            }
5929
        }
5930
        else {
5931
            SCN_EXPECT(false);
5932
            SCN_UNREACHABLE;
5933
        }
5934
0
    }
Unexecuted instantiation: scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()(scn::v3::basic_scan_arg<scn::v3::basic_scan_context<char> >::handle)
Unexecuted instantiation: scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<char> >::operator()(scn::v3::basic_scan_arg<scn::v3::basic_scan_context<char> >::handle)
Unexecuted instantiation: scn::v3::impl::default_arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()(scn::v3::basic_scan_arg<scn::v3::basic_scan_context<wchar_t> >::handle)
Unexecuted instantiation: scn::v3::impl::default_arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()(scn::v3::basic_scan_arg<scn::v3::basic_scan_context<wchar_t> >::handle)
5935
5936
    range_type range;
5937
    args_type args;
5938
    detail::locale_ref loc;
5939
};
5940
5941
template <typename Iterator>
5942
using skip_fill_result = std::pair<Iterator, std::ptrdiff_t>;
5943
5944
template <typename Range>
5945
auto skip_fill(Range range,
5946
               std::ptrdiff_t max_width,
5947
               const detail::fill_type& fill,
5948
               bool want_skipped_width)
5949
    -> scan_expected<skip_fill_result<ranges::iterator_t<Range>>>
5950
4.17k
{
5951
4.17k
    using char_type = detail::char_t<Range>;
5952
4.17k
    using result_type = skip_fill_result<ranges::iterator_t<Range>>;
5953
5954
4.17k
    if (fill.size() <= sizeof(char_type)) {
5955
3.55k
        const auto fill_ch = fill.template get_code_unit<char_type>();
5956
4.64k
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
Unexecuted instantiation: _ZZN3scn2v34impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESI_lRKNS8_9fill_typeEbENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS7_9fill_typeEbENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEENS0_13scan_expectedINS4_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEbENKUlcE_clEc
Unexecuted instantiation: _ZZN3scn2v34impl9skip_fillINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS0_13scan_expectedINS3_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESB_lRKNS0_6detail9fill_typeEbENKUlcE_clEc
_ZZN3scn2v34impl9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEbENKUlcE_clEc
Line
Count
Source
5956
2.77k
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
Unexecuted instantiation: _ZZN3scn2v34impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESI_lRKNS8_9fill_typeEbENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS7_9fill_typeEbENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEENS0_13scan_expectedINS4_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEbENKUlwE_clEw
Unexecuted instantiation: _ZZN3scn2v34impl9skip_fillINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEENS0_13scan_expectedINS3_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESB_lRKNS0_6detail9fill_typeEbENKUlwE_clEw
_ZZN3scn2v34impl9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEbENKUlwE_clEw
Line
Count
Source
5956
928
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
_ZZN3scn2v34impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbENKUlcE_clEc
Line
Count
Source
5956
664
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
_ZZN3scn2v34impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEbENKUlwE_clEw
Line
Count
Source
5956
280
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
5957
5958
3.55k
        if (max_width == 0) {
5959
2.66k
            auto it = read_while_code_unit(range, pred);
5960
5961
2.66k
            if (want_skipped_width) {
5962
208
                auto prefix_width =
5963
208
                    static_cast<std::ptrdiff_t>(
5964
208
                        calculate_text_width(static_cast<char32_t>(fill_ch))) *
5965
208
                    ranges::distance(range.begin(), it);
5966
208
                return result_type{it, prefix_width};
5967
208
            }
5968
2.45k
            return result_type{it, 0};
5969
2.66k
        }
5970
5971
890
        auto max_width_view = take_width(range, max_width);
5972
890
        auto w_it = read_while_code_unit(max_width_view, pred);
5973
5974
890
        if (want_skipped_width) {
5975
890
            return result_type{w_it.base(), max_width - w_it.count()};
5976
890
        }
5977
0
        return result_type{w_it.base(), 0};
5978
890
    }
5979
5980
624
    const auto fill_chars = fill.template get_code_units<char_type>();
5981
624
    if (max_width == 0) {
5982
200
        auto it = read_while_code_units(range, fill_chars);
5983
5984
200
        if (want_skipped_width) {
5985
52
            auto prefix_width =
5986
52
                static_cast<std::ptrdiff_t>(calculate_text_width(fill_chars)) *
5987
52
                ranges::distance(range.begin(), it) / ranges::ssize(fill_chars);
5988
52
            return result_type{it, prefix_width};
5989
52
        }
5990
148
        return result_type{it, 0};
5991
200
    }
5992
5993
424
    auto max_width_view = take_width(range, max_width);
5994
424
    auto w_it = read_while_code_units(max_width_view, fill_chars);
5995
5996
424
    if (want_skipped_width) {
5997
424
        return result_type{w_it.base(), max_width - w_it.count()};
5998
424
    }
5999
0
    return result_type{w_it.base(), 0};
6000
424
}
Unexecuted instantiation: _ZN3scn2v34impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESI_lRKNS8_9fill_typeEb
Unexecuted instantiation: _ZN3scn2v34impl9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS7_9fill_typeEb
Unexecuted instantiation: _ZN3scn2v34impl9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIcNS4_11char_traitsIcEEEEEEEENS0_13scan_expectedINS4_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEb
Unexecuted instantiation: _ZN3scn2v34impl9skip_fillINSt3__117basic_string_viewIcNS3_11char_traitsIcEEEEEENS0_13scan_expectedINS3_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESB_lRKNS0_6detail9fill_typeEb
_ZN3scn2v34impl9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKcS8_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEb
Line
Count
Source
5950
2.72k
{
5951
2.72k
    using char_type = detail::char_t<Range>;
5952
2.72k
    using result_type = skip_fill_result<ranges::iterator_t<Range>>;
5953
5954
2.72k
    if (fill.size() <= sizeof(char_type)) {
5955
2.35k
        const auto fill_ch = fill.template get_code_unit<char_type>();
5956
2.35k
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
5957
5958
2.35k
        if (max_width == 0) {
5959
2.23k
            auto it = read_while_code_unit(range, pred);
5960
5961
2.23k
            if (want_skipped_width) {
5962
142
                auto prefix_width =
5963
142
                    static_cast<std::ptrdiff_t>(
5964
142
                        calculate_text_width(static_cast<char32_t>(fill_ch))) *
5965
142
                    ranges::distance(range.begin(), it);
5966
142
                return result_type{it, prefix_width};
5967
142
            }
5968
2.09k
            return result_type{it, 0};
5969
2.23k
        }
5970
5971
116
        auto max_width_view = take_width(range, max_width);
5972
116
        auto w_it = read_while_code_unit(max_width_view, pred);
5973
5974
116
        if (want_skipped_width) {
5975
116
            return result_type{w_it.base(), max_width - w_it.count()};
5976
116
        }
5977
0
        return result_type{w_it.base(), 0};
5978
116
    }
5979
5980
378
    const auto fill_chars = fill.template get_code_units<char_type>();
5981
378
    if (max_width == 0) {
5982
200
        auto it = read_while_code_units(range, fill_chars);
5983
5984
200
        if (want_skipped_width) {
5985
52
            auto prefix_width =
5986
52
                static_cast<std::ptrdiff_t>(calculate_text_width(fill_chars)) *
5987
52
                ranges::distance(range.begin(), it) / ranges::ssize(fill_chars);
5988
52
            return result_type{it, prefix_width};
5989
52
        }
5990
148
        return result_type{it, 0};
5991
200
    }
5992
5993
178
    auto max_width_view = take_width(range, max_width);
5994
178
    auto w_it = read_while_code_units(max_width_view, fill_chars);
5995
5996
178
    if (want_skipped_width) {
5997
178
        return result_type{w_it.base(), max_width - w_it.count()};
5998
178
    }
5999
0
    return result_type{w_it.base(), 0};
6000
178
}
Unexecuted instantiation: _ZN3scn2v34impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS4_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESI_lRKNS8_9fill_typeEb
Unexecuted instantiation: _ZN3scn2v34impl9skip_fillINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS3_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESG_lRKNS7_9fill_typeEb
Unexecuted instantiation: _ZN3scn2v34impl9skip_fillINS1_15take_width_viewINSt3__117basic_string_viewIwNS4_11char_traitsIwEEEEEEEENS0_13scan_expectedINS4_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEb
Unexecuted instantiation: _ZN3scn2v34impl9skip_fillINSt3__117basic_string_viewIwNS3_11char_traitsIwEEEEEENS0_13scan_expectedINS3_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESB_lRKNS0_6detail9fill_typeEb
_ZN3scn2v34impl9skip_fillINS0_6ranges6detail9subrange_8subrangeIPKwS8_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS3_5beginEEclsr3stdE7declvalIRT_EEEElEEEESD_lRKNS0_6detail9fill_typeEb
Line
Count
Source
5950
486
{
5951
486
    using char_type = detail::char_t<Range>;
5952
486
    using result_type = skip_fill_result<ranges::iterator_t<Range>>;
5953
5954
486
    if (fill.size() <= sizeof(char_type)) {
5955
486
        const auto fill_ch = fill.template get_code_unit<char_type>();
5956
486
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
5957
5958
486
        if (max_width == 0) {
5959
428
            auto it = read_while_code_unit(range, pred);
5960
5961
428
            if (want_skipped_width) {
5962
66
                auto prefix_width =
5963
66
                    static_cast<std::ptrdiff_t>(
5964
66
                        calculate_text_width(static_cast<char32_t>(fill_ch))) *
5965
66
                    ranges::distance(range.begin(), it);
5966
66
                return result_type{it, prefix_width};
5967
66
            }
5968
362
            return result_type{it, 0};
5969
428
        }
5970
5971
58
        auto max_width_view = take_width(range, max_width);
5972
58
        auto w_it = read_while_code_unit(max_width_view, pred);
5973
5974
58
        if (want_skipped_width) {
5975
58
            return result_type{w_it.base(), max_width - w_it.count()};
5976
58
        }
5977
0
        return result_type{w_it.base(), 0};
5978
58
    }
5979
5980
0
    const auto fill_chars = fill.template get_code_units<char_type>();
5981
0
    if (max_width == 0) {
5982
0
        auto it = read_while_code_units(range, fill_chars);
5983
5984
0
        if (want_skipped_width) {
5985
0
            auto prefix_width =
5986
0
                static_cast<std::ptrdiff_t>(calculate_text_width(fill_chars)) *
5987
0
                ranges::distance(range.begin(), it) / ranges::ssize(fill_chars);
5988
0
            return result_type{it, prefix_width};
5989
0
        }
5990
0
        return result_type{it, 0};
5991
0
    }
5992
5993
0
    auto max_width_view = take_width(range, max_width);
5994
0
    auto w_it = read_while_code_units(max_width_view, fill_chars);
5995
5996
0
    if (want_skipped_width) {
5997
0
        return result_type{w_it.base(), max_width - w_it.count()};
5998
0
    }
5999
0
    return result_type{w_it.base(), 0};
6000
0
}
_ZN3scn2v34impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcS9_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEb
Line
Count
Source
5950
728
{
5951
728
    using char_type = detail::char_t<Range>;
5952
728
    using result_type = skip_fill_result<ranges::iterator_t<Range>>;
5953
5954
728
    if (fill.size() <= sizeof(char_type)) {
5955
482
        const auto fill_ch = fill.template get_code_unit<char_type>();
5956
482
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
5957
5958
482
        if (max_width == 0) {
5959
0
            auto it = read_while_code_unit(range, pred);
5960
5961
0
            if (want_skipped_width) {
5962
0
                auto prefix_width =
5963
0
                    static_cast<std::ptrdiff_t>(
5964
0
                        calculate_text_width(static_cast<char32_t>(fill_ch))) *
5965
0
                    ranges::distance(range.begin(), it);
5966
0
                return result_type{it, prefix_width};
5967
0
            }
5968
0
            return result_type{it, 0};
5969
0
        }
5970
5971
482
        auto max_width_view = take_width(range, max_width);
5972
482
        auto w_it = read_while_code_unit(max_width_view, pred);
5973
5974
482
        if (want_skipped_width) {
5975
482
            return result_type{w_it.base(), max_width - w_it.count()};
5976
482
        }
5977
0
        return result_type{w_it.base(), 0};
5978
482
    }
5979
5980
246
    const auto fill_chars = fill.template get_code_units<char_type>();
5981
246
    if (max_width == 0) {
5982
0
        auto it = read_while_code_units(range, fill_chars);
5983
5984
0
        if (want_skipped_width) {
5985
0
            auto prefix_width =
5986
0
                static_cast<std::ptrdiff_t>(calculate_text_width(fill_chars)) *
5987
0
                ranges::distance(range.begin(), it) / ranges::ssize(fill_chars);
5988
0
            return result_type{it, prefix_width};
5989
0
        }
5990
0
        return result_type{it, 0};
5991
0
    }
5992
5993
246
    auto max_width_view = take_width(range, max_width);
5994
246
    auto w_it = read_while_code_units(max_width_view, fill_chars);
5995
5996
246
    if (want_skipped_width) {
5997
246
        return result_type{w_it.base(), max_width - w_it.count()};
5998
246
    }
5999
0
    return result_type{w_it.base(), 0};
6000
246
}
_ZN3scn2v34impl9skip_fillINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwS9_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS4_5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_lRKNS0_6detail9fill_typeEb
Line
Count
Source
5950
234
{
5951
234
    using char_type = detail::char_t<Range>;
5952
234
    using result_type = skip_fill_result<ranges::iterator_t<Range>>;
5953
5954
234
    if (fill.size() <= sizeof(char_type)) {
5955
234
        const auto fill_ch = fill.template get_code_unit<char_type>();
5956
234
        const auto pred = [=](char_type ch) { return ch == fill_ch; };
5957
5958
234
        if (max_width == 0) {
5959
0
            auto it = read_while_code_unit(range, pred);
5960
5961
0
            if (want_skipped_width) {
5962
0
                auto prefix_width =
5963
0
                    static_cast<std::ptrdiff_t>(
5964
0
                        calculate_text_width(static_cast<char32_t>(fill_ch))) *
5965
0
                    ranges::distance(range.begin(), it);
5966
0
                return result_type{it, prefix_width};
5967
0
            }
5968
0
            return result_type{it, 0};
5969
0
        }
5970
5971
234
        auto max_width_view = take_width(range, max_width);
5972
234
        auto w_it = read_while_code_unit(max_width_view, pred);
5973
5974
234
        if (want_skipped_width) {
5975
234
            return result_type{w_it.base(), max_width - w_it.count()};
5976
234
        }
5977
0
        return result_type{w_it.base(), 0};
5978
234
    }
5979
5980
0
    const auto fill_chars = fill.template get_code_units<char_type>();
5981
0
    if (max_width == 0) {
5982
0
        auto it = read_while_code_units(range, fill_chars);
5983
5984
0
        if (want_skipped_width) {
5985
0
            auto prefix_width =
5986
0
                static_cast<std::ptrdiff_t>(calculate_text_width(fill_chars)) *
5987
0
                ranges::distance(range.begin(), it) / ranges::ssize(fill_chars);
5988
0
            return result_type{it, prefix_width};
5989
0
        }
5990
0
        return result_type{it, 0};
5991
0
    }
5992
5993
0
    auto max_width_view = take_width(range, max_width);
5994
0
    auto w_it = read_while_code_units(max_width_view, fill_chars);
5995
5996
0
    if (want_skipped_width) {
5997
0
        return result_type{w_it.base(), max_width - w_it.count()};
5998
0
    }
5999
0
    return result_type{w_it.base(), 0};
6000
0
}
6001
6002
SCN_MAYBE_UNUSED constexpr scan_error check_widths_for_arg_reader(
6003
    const detail::format_specs& specs,
6004
    std::ptrdiff_t prefix_width,
6005
    std::ptrdiff_t value_width,
6006
    std::ptrdiff_t postfix_width)
6007
9.36k
{
6008
9.36k
    if (specs.width != 0) {
6009
2.42k
        if (prefix_width + value_width + postfix_width < specs.width) {
6010
1.26k
            return {scan_error::invalid_scanned_value,
6011
1.26k
                    "Scanned value too narrow, width did not exceed what "
6012
1.26k
                    "was specified in the format string"};
6013
1.26k
        }
6014
2.42k
    }
6015
8.10k
    if (specs.precision != 0) {
6016
1.92k
        if (prefix_width + value_width + postfix_width > specs.precision) {
6017
114
            return {scan_error::invalid_scanned_value,
6018
114
                    "Scanned value too wide, width exceeded the specified "
6019
114
                    "precision"};
6020
114
        }
6021
1.92k
    }
6022
7.98k
    return {};
6023
8.10k
}
6024
6025
template <typename Context>
6026
struct arg_reader {
6027
    using context_type = Context;
6028
    using char_type = typename context_type::char_type;
6029
6030
    using range_type = typename context_type::range_type;
6031
    using iterator = ranges::iterator_t<range_type>;
6032
6033
    template <typename Range>
6034
    auto impl_prefix(Range rng, bool rd_skip_ws_before_read)
6035
        -> scan_expected<skip_fill_result<ranges::iterator_t<Range>>>
6036
37.2k
    {
6037
37.2k
        const bool need_skipped_width =
6038
37.2k
            specs.width != 0 || specs.precision != 0;
6039
37.2k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6040
6041
        // Read prefix
6042
37.2k
        if (specs.align == detail::align_type::right ||
6043
37.2k
            specs.align == detail::align_type::center) {
6044
3.47k
            return skip_fill(rng, specs.precision, specs.fill,
6045
3.47k
                             need_skipped_width);
6046
3.47k
        }
6047
33.7k
        if (specs.align == detail::align_type::none && rd_skip_ws_before_read) {
6048
            // Default alignment:
6049
            // Skip preceding whitespace, if required by the reader
6050
7.11k
            if (specs.precision != 0) {
6051
2.91k
                auto max_width_view = take_width(rng, specs.precision);
6052
2.91k
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view)
6053
2.73k
                                  .transform_error(make_eof_scan_error));
6054
2.73k
                return result_type{w_it.base(), specs.precision - w_it.count()};
6055
2.91k
            }
6056
8.40k
            SCN_TRY(it, skip_classic_whitespace(rng).transform_error(
6057
8.40k
                            make_eof_scan_error));
6058
6059
8.40k
            if (need_skipped_width) {
6060
2.99k
                return result_type{
6061
2.99k
                    it,
6062
2.99k
                    calculate_text_width(make_contiguous_buffer(
6063
2.99k
                                             ranges::subrange{rng.begin(), it})
6064
2.99k
                                             .view())};
6065
2.99k
            }
6066
1.20k
            return result_type{it, 0};
6067
8.40k
        }
6068
6069
26.6k
        return result_type{rng.begin(), 0};
6070
33.7k
    }
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE11impl_prefixINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS8_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESM_b
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE11impl_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_b
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE11impl_prefixINS1_15take_width_viewINSt3__117basic_string_viewIcNS8_11char_traitsIcEEEEEEEENS0_13scan_expectedINS8_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_b
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE11impl_prefixINSt3__117basic_string_viewIcNS7_11char_traitsIcEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_b
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE11impl_prefixINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS8_18default_sentinel_tEEEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESM_b
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE11impl_prefixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_b
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE11impl_prefixINS1_15take_width_viewINSt3__117basic_string_viewIwNS8_11char_traitsIwEEEEEEEENS0_13scan_expectedINS8_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_b
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE11impl_prefixINSt3__117basic_string_viewIwNS7_11char_traitsIwEEEEEENS0_13scan_expectedINS7_4pairIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT_EEEElEEEESF_b
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE11impl_prefixINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKcSD_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_b
Line
Count
Source
6036
4.54k
    {
6037
4.54k
        const bool need_skipped_width =
6038
4.54k
            specs.width != 0 || specs.precision != 0;
6039
4.54k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6040
6041
        // Read prefix
6042
4.54k
        if (specs.align == detail::align_type::right ||
6043
4.54k
            specs.align == detail::align_type::center) {
6044
728
            return skip_fill(rng, specs.precision, specs.fill,
6045
728
                             need_skipped_width);
6046
728
        }
6047
3.81k
        if (specs.align == detail::align_type::none && rd_skip_ws_before_read) {
6048
            // Default alignment:
6049
            // Skip preceding whitespace, if required by the reader
6050
1.94k
            if (specs.precision != 0) {
6051
1.94k
                auto max_width_view = take_width(rng, specs.precision);
6052
1.94k
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view)
6053
1.76k
                                  .transform_error(make_eof_scan_error));
6054
1.76k
                return result_type{w_it.base(), specs.precision - w_it.count()};
6055
1.94k
            }
6056
0
            SCN_TRY(it, skip_classic_whitespace(rng).transform_error(
6057
0
                            make_eof_scan_error));
6058
6059
0
            if (need_skipped_width) {
6060
0
                return result_type{
6061
0
                    it,
6062
0
                    calculate_text_width(make_contiguous_buffer(
6063
0
                                             ranges::subrange{rng.begin(), it})
6064
0
                                             .view())};
6065
0
            }
6066
0
            return result_type{it, 0};
6067
0
        }
6068
6069
1.87k
        return result_type{rng.begin(), 0};
6070
3.81k
    }
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE11impl_prefixINS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_b
Line
Count
Source
6036
20.1k
    {
6037
20.1k
        const bool need_skipped_width =
6038
20.1k
            specs.width != 0 || specs.precision != 0;
6039
20.1k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6040
6041
        // Read prefix
6042
20.1k
        if (specs.align == detail::align_type::right ||
6043
20.1k
            specs.align == detail::align_type::center) {
6044
2.19k
            return skip_fill(rng, specs.precision, specs.fill,
6045
2.19k
                             need_skipped_width);
6046
2.19k
        }
6047
17.9k
        if (specs.align == detail::align_type::none && rd_skip_ws_before_read) {
6048
            // Default alignment:
6049
            // Skip preceding whitespace, if required by the reader
6050
1.67k
            if (specs.precision != 0) {
6051
0
                auto max_width_view = take_width(rng, specs.precision);
6052
0
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view)
6053
0
                                  .transform_error(make_eof_scan_error));
6054
0
                return result_type{w_it.base(), specs.precision - w_it.count()};
6055
0
            }
6056
3.34k
            SCN_TRY(it, skip_classic_whitespace(rng).transform_error(
6057
3.34k
                            make_eof_scan_error));
6058
6059
3.34k
            if (need_skipped_width) {
6060
1.06k
                return result_type{
6061
1.06k
                    it,
6062
1.06k
                    calculate_text_width(make_contiguous_buffer(
6063
1.06k
                                             ranges::subrange{rng.begin(), it})
6064
1.06k
                                             .view())};
6065
1.06k
            }
6066
604
            return result_type{it, 0};
6067
3.34k
        }
6068
6069
16.2k
        return result_type{rng.begin(), 0};
6070
17.9k
    }
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE11impl_prefixINS1_15take_width_viewINS0_6ranges6detail9subrange_8subrangeIPKwSD_EEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS8_5beginEEclsr3stdE7declvalIRT_EEEElEEEESJ_b
Line
Count
Source
6036
1.63k
    {
6037
1.63k
        const bool need_skipped_width =
6038
1.63k
            specs.width != 0 || specs.precision != 0;
6039
1.63k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6040
6041
        // Read prefix
6042
1.63k
        if (specs.align == detail::align_type::right ||
6043
1.63k
            specs.align == detail::align_type::center) {
6044
234
            return skip_fill(rng, specs.precision, specs.fill,
6045
234
                             need_skipped_width);
6046
234
        }
6047
1.40k
        if (specs.align == detail::align_type::none && rd_skip_ws_before_read) {
6048
            // Default alignment:
6049
            // Skip preceding whitespace, if required by the reader
6050
970
            if (specs.precision != 0) {
6051
970
                auto max_width_view = take_width(rng, specs.precision);
6052
970
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view)
6053
970
                                  .transform_error(make_eof_scan_error));
6054
970
                return result_type{w_it.base(), specs.precision - w_it.count()};
6055
970
            }
6056
0
            SCN_TRY(it, skip_classic_whitespace(rng).transform_error(
6057
0
                            make_eof_scan_error));
6058
6059
0
            if (need_skipped_width) {
6060
0
                return result_type{
6061
0
                    it,
6062
0
                    calculate_text_width(make_contiguous_buffer(
6063
0
                                             ranges::subrange{rng.begin(), it})
6064
0
                                             .view())};
6065
0
            }
6066
0
            return result_type{it, 0};
6067
0
        }
6068
6069
430
        return result_type{rng.begin(), 0};
6070
1.40k
    }
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE11impl_prefixINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_b
Line
Count
Source
6036
10.9k
    {
6037
10.9k
        const bool need_skipped_width =
6038
10.9k
            specs.width != 0 || specs.precision != 0;
6039
10.9k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6040
6041
        // Read prefix
6042
10.9k
        if (specs.align == detail::align_type::right ||
6043
10.9k
            specs.align == detail::align_type::center) {
6044
318
            return skip_fill(rng, specs.precision, specs.fill,
6045
318
                             need_skipped_width);
6046
318
        }
6047
10.6k
        if (specs.align == detail::align_type::none && rd_skip_ws_before_read) {
6048
            // Default alignment:
6049
            // Skip preceding whitespace, if required by the reader
6050
2.53k
            if (specs.precision != 0) {
6051
0
                auto max_width_view = take_width(rng, specs.precision);
6052
0
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view)
6053
0
                                  .transform_error(make_eof_scan_error));
6054
0
                return result_type{w_it.base(), specs.precision - w_it.count()};
6055
0
            }
6056
5.06k
            SCN_TRY(it, skip_classic_whitespace(rng).transform_error(
6057
5.06k
                            make_eof_scan_error));
6058
6059
5.06k
            if (need_skipped_width) {
6060
1.92k
                return result_type{
6061
1.92k
                    it,
6062
1.92k
                    calculate_text_width(make_contiguous_buffer(
6063
1.92k
                                             ranges::subrange{rng.begin(), it})
6064
1.92k
                                             .view())};
6065
1.92k
            }
6066
602
            return result_type{it, 0};
6067
5.06k
        }
6068
6069
8.10k
        return result_type{rng.begin(), 0};
6070
10.6k
    }
6071
6072
    template <typename Range>
6073
    auto impl_postfix(Range rng,
6074
                      bool rd_skip_ws_before_read,
6075
                      std::ptrdiff_t prefix_width,
6076
                      std::ptrdiff_t value_width)
6077
        -> scan_expected<skip_fill_result<ranges::iterator_t<Range>>>
6078
7.12k
    {
6079
7.12k
        const bool need_skipped_width =
6080
7.12k
            specs.width != 0 || specs.precision != 0;
6081
7.12k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6082
6083
7.12k
        if (specs.align == detail::align_type::left ||
6084
7.12k
            specs.align == detail::align_type::center) {
6085
846
            if (specs.precision != 0 &&
6086
846
                specs.precision - value_width - prefix_width == 0) {
6087
142
                return result_type{rng.begin(), 0};
6088
142
            }
6089
704
            return skip_fill(rng, specs.precision - value_width - prefix_width,
6090
704
                             specs.fill, need_skipped_width);
6091
846
        }
6092
6.27k
        if (specs.align == detail::align_type::none &&
6093
6.27k
            !rd_skip_ws_before_read &&
6094
6.27k
            ((specs.width != 0 && prefix_width + value_width < specs.width) ||
6095
5.58k
             (specs.precision != 0 &&
6096
4.64k
              prefix_width + value_width < specs.precision))) {
6097
1.62k
            if (specs.precision != 0) {
6098
680
                const auto initial_width =
6099
680
                    specs.precision - prefix_width - value_width;
6100
680
                auto max_width_view = take_width(rng, initial_width);
6101
680
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view, true)
6102
680
                                  .transform_error(make_eof_scan_error));
6103
680
                return result_type{w_it.base(), initial_width - w_it.count()};
6104
680
            }
6105
1.88k
            SCN_TRY(it, skip_classic_whitespace(rng, true).transform_error(
6106
1.88k
                            make_eof_scan_error));
6107
6108
1.88k
            if (need_skipped_width) {
6109
942
                return result_type{
6110
942
                    it,
6111
942
                    calculate_text_width(make_contiguous_buffer(
6112
942
                                             ranges::subrange{rng.begin(), it})
6113
942
                                             .view())};
6114
942
            }
6115
0
            return result_type{it, 0};
6116
1.88k
        }
6117
4.65k
        return result_type{rng.begin(), 0};
6118
6.27k
    }
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE12impl_postfixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_bll
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE12impl_postfixINS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_bll
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE12impl_postfixINS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS7_18default_sentinel_tEEEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESK_bll
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE12impl_postfixINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_bll
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE12impl_postfixINS0_6ranges6detail9subrange_8subrangeIPKcSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_bll
Line
Count
Source
6078
4.81k
    {
6079
4.81k
        const bool need_skipped_width =
6080
4.81k
            specs.width != 0 || specs.precision != 0;
6081
4.81k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6082
6083
4.81k
        if (specs.align == detail::align_type::left ||
6084
4.81k
            specs.align == detail::align_type::center) {
6085
634
            if (specs.precision != 0 &&
6086
634
                specs.precision - value_width - prefix_width == 0) {
6087
98
                return result_type{rng.begin(), 0};
6088
98
            }
6089
536
            return skip_fill(rng, specs.precision - value_width - prefix_width,
6090
536
                             specs.fill, need_skipped_width);
6091
634
        }
6092
4.18k
        if (specs.align == detail::align_type::none &&
6093
4.18k
            !rd_skip_ws_before_read &&
6094
4.18k
            ((specs.width != 0 && prefix_width + value_width < specs.width) ||
6095
3.73k
             (specs.precision != 0 &&
6096
3.52k
              prefix_width + value_width < specs.precision))) {
6097
682
            if (specs.precision != 0) {
6098
480
                const auto initial_width =
6099
480
                    specs.precision - prefix_width - value_width;
6100
480
                auto max_width_view = take_width(rng, initial_width);
6101
480
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view, true)
6102
480
                                  .transform_error(make_eof_scan_error));
6103
480
                return result_type{w_it.base(), initial_width - w_it.count()};
6104
480
            }
6105
404
            SCN_TRY(it, skip_classic_whitespace(rng, true).transform_error(
6106
404
                            make_eof_scan_error));
6107
6108
404
            if (need_skipped_width) {
6109
202
                return result_type{
6110
202
                    it,
6111
202
                    calculate_text_width(make_contiguous_buffer(
6112
202
                                             ranges::subrange{rng.begin(), it})
6113
202
                                             .view())};
6114
202
            }
6115
0
            return result_type{it, 0};
6116
404
        }
6117
3.50k
        return result_type{rng.begin(), 0};
6118
4.18k
    }
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE12impl_postfixINS0_6ranges6detail9subrange_8subrangeIPKwSC_EEEENS0_13scan_expectedINSt3__14pairIDTclL_ZNS7_5beginEEclsr3stdE7declvalIRT_EEEElEEEESH_bll
Line
Count
Source
6078
2.30k
    {
6079
2.30k
        const bool need_skipped_width =
6080
2.30k
            specs.width != 0 || specs.precision != 0;
6081
2.30k
        using result_type = skip_fill_result<ranges::iterator_t<Range>>;
6082
6083
2.30k
        if (specs.align == detail::align_type::left ||
6084
2.30k
            specs.align == detail::align_type::center) {
6085
212
            if (specs.precision != 0 &&
6086
212
                specs.precision - value_width - prefix_width == 0) {
6087
44
                return result_type{rng.begin(), 0};
6088
44
            }
6089
168
            return skip_fill(rng, specs.precision - value_width - prefix_width,
6090
168
                             specs.fill, need_skipped_width);
6091
212
        }
6092
2.09k
        if (specs.align == detail::align_type::none &&
6093
2.09k
            !rd_skip_ws_before_read &&
6094
2.09k
            ((specs.width != 0 && prefix_width + value_width < specs.width) ||
6095
1.85k
             (specs.precision != 0 &&
6096
1.11k
              prefix_width + value_width < specs.precision))) {
6097
940
            if (specs.precision != 0) {
6098
200
                const auto initial_width =
6099
200
                    specs.precision - prefix_width - value_width;
6100
200
                auto max_width_view = take_width(rng, initial_width);
6101
200
                SCN_TRY(w_it, skip_classic_whitespace(max_width_view, true)
6102
200
                                  .transform_error(make_eof_scan_error));
6103
200
                return result_type{w_it.base(), initial_width - w_it.count()};
6104
200
            }
6105
1.48k
            SCN_TRY(it, skip_classic_whitespace(rng, true).transform_error(
6106
1.48k
                            make_eof_scan_error));
6107
6108
1.48k
            if (need_skipped_width) {
6109
740
                return result_type{
6110
740
                    it,
6111
740
                    calculate_text_width(make_contiguous_buffer(
6112
740
                                             ranges::subrange{rng.begin(), it})
6113
740
                                             .view())};
6114
740
            }
6115
0
            return result_type{it, 0};
6116
1.48k
        }
6117
1.15k
        return result_type{rng.begin(), 0};
6118
2.09k
    }
6119
6120
    template <typename Reader, typename Range, typename T>
6121
    auto impl(Reader& rd, Range rng, T& value)
6122
        -> scan_expected<ranges::iterator_t<Range>>
6123
37.2k
    {
6124
37.2k
        const bool need_skipped_width =
6125
37.2k
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
37.2k
        auto it = rng.begin();
6129
37.2k
        std::ptrdiff_t prefix_width = 0;
6130
37.2k
        if (specs.precision != 0) {
6131
6.18k
            auto max_width_view = take_width(rng, specs.precision);
6132
6.18k
            SCN_TRY(prefix_result,
6133
6.00k
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
6.00k
            it = prefix_result.first.base();
6135
6.00k
            prefix_width = prefix_result.second;
6136
6.00k
        }
6137
31.0k
        else {
6138
31.0k
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
31.0k
            std::tie(it, prefix_width) = prefix_result;
6140
31.0k
        }
6141
37.0k
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
37.0k
        std::ptrdiff_t value_width = 0;
6145
37.0k
        if (specs.precision != 0) {
6146
6.00k
            if (specs.precision <= prefix_width) {
6147
88
                return unexpected_scan_error(
6148
88
                    scan_error::invalid_scanned_value,
6149
88
                    "Too many fill characters before value, "
6150
88
                    "precision exceeded before reading value");
6151
88
            }
6152
6153
5.91k
            const auto initial_width = specs.precision - prefix_width;
6154
5.91k
            auto max_width_view =
6155
5.91k
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
5.91k
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
1.92k
            it = w_it.base();
6158
1.92k
            value_width = initial_width - w_it.count();
6159
1.92k
        }
6160
31.0k
        else {
6161
31.0k
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
7.44k
                                             specs, value, loc));
6163
6164
7.44k
            if (need_skipped_width) {
6165
2.36k
                value_width = calculate_text_width(
6166
2.36k
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
2.36k
                        .view());
6168
2.36k
            }
6169
7.44k
        }
6170
6171
        // Read postfix
6172
9.36k
        std::ptrdiff_t postfix_width = 0;
6173
9.36k
        if (it != rng.end()) {
6174
7.12k
            SCN_TRY(postfix_result,
6175
7.12k
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
7.12k
                                 rd.skip_ws_before_read(), prefix_width,
6177
7.12k
                                 value_width));
6178
7.12k
            std::tie(it, postfix_width) = postfix_result;
6179
7.12k
        }
6180
6181
9.36k
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
9.36k
                                                 value_width, postfix_width);
6183
9.36k
            !e) {
6184
1.38k
            return unexpected(e);
6185
1.38k
        }
6186
6187
7.98k
        return it;
6188
9.36k
    }
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_20reader_impl_for_charIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_20reader_impl_for_charIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEcEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEaEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEsEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEElEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEExEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEhEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEtEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEjEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEmEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEyEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEfEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEdEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEeEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENSt3__112basic_stringIcNSJ_11char_traitsIcEENSJ_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SR_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEENS9_12basic_stringIcSC_NS9_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENSt3__112basic_stringIwNSJ_11char_traitsIwEENSJ_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SR_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEENS9_12basic_stringIwNSB_IwEENS9_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENSt3__117basic_string_viewIcNSJ_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SP_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEESD_EENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENSt3__117basic_string_viewIwNSJ_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SP_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEENSA_IwNSB_IwEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_29reader_impl_for_regex_matchesIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_29reader_impl_for_regex_matchesIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_29reader_impl_for_regex_matchesIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_29reader_impl_for_regex_matchesIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_wcharIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_wcharIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEwEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEaEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEaEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEsEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEsEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEElEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEElEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEExEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEExEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEhEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEhEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEtEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEtEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEjEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEjEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEmEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEmEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEyEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEyEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEfEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEdEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEeEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENSt3__112basic_stringIcNSJ_11char_traitsIcEENSJ_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SR_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEENS9_12basic_stringIcNSB_IcEENS9_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENSt3__112basic_stringIwNSJ_11char_traitsIwEENSJ_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SR_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEENS9_12basic_stringIwSC_NS9_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENSt3__117basic_string_viewIcNSJ_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SP_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEENSA_IcNSB_IcEEEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENSt3__117basic_string_viewIwNSJ_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SP_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEESD_EENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_29reader_impl_for_regex_matchesIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_29reader_impl_for_regex_matchesIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_29reader_impl_for_regex_matchesIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_29reader_impl_for_regex_matchesIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEaEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEsEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6123
588
    {
6124
588
        const bool need_skipped_width =
6125
588
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
588
        auto it = rng.begin();
6129
588
        std::ptrdiff_t prefix_width = 0;
6130
588
        if (specs.precision != 0) {
6131
302
            auto max_width_view = take_width(rng, specs.precision);
6132
302
            SCN_TRY(prefix_result,
6133
278
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
278
            it = prefix_result.first.base();
6135
278
            prefix_width = prefix_result.second;
6136
278
        }
6137
286
        else {
6138
286
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
286
            std::tie(it, prefix_width) = prefix_result;
6140
286
        }
6141
564
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
564
        std::ptrdiff_t value_width = 0;
6145
564
        if (specs.precision != 0) {
6146
278
            if (specs.precision <= prefix_width) {
6147
6
                return unexpected_scan_error(
6148
6
                    scan_error::invalid_scanned_value,
6149
6
                    "Too many fill characters before value, "
6150
6
                    "precision exceeded before reading value");
6151
6
            }
6152
6153
272
            const auto initial_width = specs.precision - prefix_width;
6154
272
            auto max_width_view =
6155
272
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
272
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
0
            it = w_it.base();
6158
0
            value_width = initial_width - w_it.count();
6159
0
        }
6160
286
        else {
6161
286
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
0
                                             specs, value, loc));
6163
6164
0
            if (need_skipped_width) {
6165
0
                value_width = calculate_text_width(
6166
0
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
0
                        .view());
6168
0
            }
6169
0
        }
6170
6171
        // Read postfix
6172
0
        std::ptrdiff_t postfix_width = 0;
6173
0
        if (it != rng.end()) {
6174
0
            SCN_TRY(postfix_result,
6175
0
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
0
                                 rd.skip_ws_before_read(), prefix_width,
6177
0
                                 value_width));
6178
0
            std::tie(it, postfix_width) = postfix_result;
6179
0
        }
6180
6181
0
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
0
                                                 value_width, postfix_width);
6183
0
            !e) {
6184
0
            return unexpected(e);
6185
0
        }
6186
6187
0
        return it;
6188
0
    }
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EElEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EExEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEhEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEtEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEjEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6123
588
    {
6124
588
        const bool need_skipped_width =
6125
588
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
588
        auto it = rng.begin();
6129
588
        std::ptrdiff_t prefix_width = 0;
6130
588
        if (specs.precision != 0) {
6131
302
            auto max_width_view = take_width(rng, specs.precision);
6132
302
            SCN_TRY(prefix_result,
6133
278
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
278
            it = prefix_result.first.base();
6135
278
            prefix_width = prefix_result.second;
6136
278
        }
6137
286
        else {
6138
286
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
286
            std::tie(it, prefix_width) = prefix_result;
6140
286
        }
6141
564
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
564
        std::ptrdiff_t value_width = 0;
6145
564
        if (specs.precision != 0) {
6146
278
            if (specs.precision <= prefix_width) {
6147
6
                return unexpected_scan_error(
6148
6
                    scan_error::invalid_scanned_value,
6149
6
                    "Too many fill characters before value, "
6150
6
                    "precision exceeded before reading value");
6151
6
            }
6152
6153
272
            const auto initial_width = specs.precision - prefix_width;
6154
272
            auto max_width_view =
6155
272
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
272
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
0
            it = w_it.base();
6158
0
            value_width = initial_width - w_it.count();
6159
0
        }
6160
286
        else {
6161
286
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
0
                                             specs, value, loc));
6163
6164
0
            if (need_skipped_width) {
6165
0
                value_width = calculate_text_width(
6166
0
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
0
                        .view());
6168
0
            }
6169
0
        }
6170
6171
        // Read postfix
6172
0
        std::ptrdiff_t postfix_width = 0;
6173
0
        if (it != rng.end()) {
6174
0
            SCN_TRY(postfix_result,
6175
0
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
0
                                 rd.skip_ws_before_read(), prefix_width,
6177
0
                                 value_width));
6178
0
            std::tie(it, postfix_width) = postfix_result;
6179
0
        }
6180
6181
0
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
0
                                                 value_width, postfix_width);
6183
0
            !e) {
6184
0
            return unexpected(e);
6185
0
        }
6186
6187
0
        return it;
6188
0
    }
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEmEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_19reader_impl_for_intIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEyEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_23reader_impl_for_voidptrIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEPvEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Line
Count
Source
6123
512
    {
6124
512
        const bool need_skipped_width =
6125
512
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
512
        auto it = rng.begin();
6129
512
        std::ptrdiff_t prefix_width = 0;
6130
512
        if (specs.precision != 0) {
6131
260
            auto max_width_view = take_width(rng, specs.precision);
6132
260
            SCN_TRY(prefix_result,
6133
244
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
244
            it = prefix_result.first.base();
6135
244
            prefix_width = prefix_result.second;
6136
244
        }
6137
252
        else {
6138
252
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
252
            std::tie(it, prefix_width) = prefix_result;
6140
252
        }
6141
496
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
496
        std::ptrdiff_t value_width = 0;
6145
496
        if (specs.precision != 0) {
6146
244
            if (specs.precision <= prefix_width) {
6147
4
                return unexpected_scan_error(
6148
4
                    scan_error::invalid_scanned_value,
6149
4
                    "Too many fill characters before value, "
6150
4
                    "precision exceeded before reading value");
6151
4
            }
6152
6153
240
            const auto initial_width = specs.precision - prefix_width;
6154
240
            auto max_width_view =
6155
240
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
240
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
0
            it = w_it.base();
6158
0
            value_width = initial_width - w_it.count();
6159
0
        }
6160
252
        else {
6161
252
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
0
                                             specs, value, loc));
6163
6164
0
            if (need_skipped_width) {
6165
0
                value_width = calculate_text_width(
6166
0
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
0
                        .view());
6168
0
            }
6169
0
        }
6170
6171
        // Read postfix
6172
0
        std::ptrdiff_t postfix_width = 0;
6173
0
        if (it != rng.end()) {
6174
0
            SCN_TRY(postfix_result,
6175
0
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
0
                                 rd.skip_ws_before_read(), prefix_width,
6177
0
                                 value_width));
6178
0
            std::tie(it, postfix_width) = postfix_result;
6179
0
        }
6180
6181
0
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
0
                                                 value_width, postfix_width);
6183
0
            !e) {
6184
0
            return unexpected(e);
6185
0
        }
6186
6187
0
        return it;
6188
0
    }
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_20reader_impl_for_boolIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEbEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6123
796
    {
6124
796
        const bool need_skipped_width =
6125
796
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
796
        auto it = rng.begin();
6129
796
        std::ptrdiff_t prefix_width = 0;
6130
796
        if (specs.precision != 0) {
6131
380
            auto max_width_view = take_width(rng, specs.precision);
6132
380
            SCN_TRY(prefix_result,
6133
352
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
352
            it = prefix_result.first.base();
6135
352
            prefix_width = prefix_result.second;
6136
352
        }
6137
416
        else {
6138
416
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
416
            std::tie(it, prefix_width) = prefix_result;
6140
416
        }
6141
768
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
768
        std::ptrdiff_t value_width = 0;
6145
768
        if (specs.precision != 0) {
6146
352
            if (specs.precision <= prefix_width) {
6147
6
                return unexpected_scan_error(
6148
6
                    scan_error::invalid_scanned_value,
6149
6
                    "Too many fill characters before value, "
6150
6
                    "precision exceeded before reading value");
6151
6
            }
6152
6153
346
            const auto initial_width = specs.precision - prefix_width;
6154
346
            auto max_width_view =
6155
346
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
346
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
0
            it = w_it.base();
6158
0
            value_width = initial_width - w_it.count();
6159
0
        }
6160
416
        else {
6161
416
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
0
                                             specs, value, loc));
6163
6164
0
            if (need_skipped_width) {
6165
0
                value_width = calculate_text_width(
6166
0
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
0
                        .view());
6168
0
            }
6169
0
        }
6170
6171
        // Read postfix
6172
0
        std::ptrdiff_t postfix_width = 0;
6173
0
        if (it != rng.end()) {
6174
0
            SCN_TRY(postfix_result,
6175
0
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
0
                                 rd.skip_ws_before_read(), prefix_width,
6177
0
                                 value_width));
6178
0
            std::tie(it, postfix_width) = postfix_result;
6179
0
        }
6180
6181
0
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
0
                                                 value_width, postfix_width);
6183
0
            !e) {
6184
0
            return unexpected(e);
6185
0
        }
6186
6187
0
        return it;
6188
0
    }
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_20reader_impl_for_charIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6123
562
    {
6124
562
        const bool need_skipped_width =
6125
562
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
562
        auto it = rng.begin();
6129
562
        std::ptrdiff_t prefix_width = 0;
6130
562
        if (specs.precision != 0) {
6131
292
            auto max_width_view = take_width(rng, specs.precision);
6132
292
            SCN_TRY(prefix_result,
6133
292
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
292
            it = prefix_result.first.base();
6135
292
            prefix_width = prefix_result.second;
6136
292
        }
6137
270
        else {
6138
270
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
270
            std::tie(it, prefix_width) = prefix_result;
6140
270
        }
6141
562
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
562
        std::ptrdiff_t value_width = 0;
6145
562
        if (specs.precision != 0) {
6146
292
            if (specs.precision <= prefix_width) {
6147
6
                return unexpected_scan_error(
6148
6
                    scan_error::invalid_scanned_value,
6149
6
                    "Too many fill characters before value, "
6150
6
                    "precision exceeded before reading value");
6151
6
            }
6152
6153
286
            const auto initial_width = specs.precision - prefix_width;
6154
286
            auto max_width_view =
6155
286
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
286
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
254
            it = w_it.base();
6158
254
            value_width = initial_width - w_it.count();
6159
254
        }
6160
270
        else {
6161
270
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
248
                                             specs, value, loc));
6163
6164
248
            if (need_skipped_width) {
6165
180
                value_width = calculate_text_width(
6166
180
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
180
                        .view());
6168
180
            }
6169
248
        }
6170
6171
        // Read postfix
6172
502
        std::ptrdiff_t postfix_width = 0;
6173
502
        if (it != rng.end()) {
6174
502
            SCN_TRY(postfix_result,
6175
502
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
502
                                 rd.skip_ws_before_read(), prefix_width,
6177
502
                                 value_width));
6178
502
            std::tie(it, postfix_width) = postfix_result;
6179
502
        }
6180
6181
502
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
502
                                                 value_width, postfix_width);
6183
502
            !e) {
6184
160
            return unexpected(e);
6185
160
        }
6186
6187
342
        return it;
6188
502
    }
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_21reader_impl_for_wcharIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_26reader_impl_for_code_pointIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEDiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6123
586
    {
6124
586
        const bool need_skipped_width =
6125
586
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
586
        auto it = rng.begin();
6129
586
        std::ptrdiff_t prefix_width = 0;
6130
586
        if (specs.precision != 0) {
6131
298
            auto max_width_view = take_width(rng, specs.precision);
6132
298
            SCN_TRY(prefix_result,
6133
276
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
276
            it = prefix_result.first.base();
6135
276
            prefix_width = prefix_result.second;
6136
276
        }
6137
288
        else {
6138
288
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
288
            std::tie(it, prefix_width) = prefix_result;
6140
288
        }
6141
564
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
564
        std::ptrdiff_t value_width = 0;
6145
564
        if (specs.precision != 0) {
6146
276
            if (specs.precision <= prefix_width) {
6147
8
                return unexpected_scan_error(
6148
8
                    scan_error::invalid_scanned_value,
6149
8
                    "Too many fill characters before value, "
6150
8
                    "precision exceeded before reading value");
6151
8
            }
6152
6153
268
            const auto initial_width = specs.precision - prefix_width;
6154
268
            auto max_width_view =
6155
268
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
268
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
0
            it = w_it.base();
6158
0
            value_width = initial_width - w_it.count();
6159
0
        }
6160
288
        else {
6161
288
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
0
                                             specs, value, loc));
6163
6164
0
            if (need_skipped_width) {
6165
0
                value_width = calculate_text_width(
6166
0
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
0
                        .view());
6168
0
            }
6169
0
        }
6170
6171
        // Read postfix
6172
0
        std::ptrdiff_t postfix_width = 0;
6173
0
        if (it != rng.end()) {
6174
0
            SCN_TRY(postfix_result,
6175
0
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
0
                                 rd.skip_ws_before_read(), prefix_width,
6177
0
                                 value_width));
6178
0
            std::tie(it, postfix_width) = postfix_result;
6179
0
        }
6180
6181
0
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
0
                                                 value_width, postfix_width);
6183
0
            !e) {
6184
0
            return unexpected(e);
6185
0
        }
6186
6187
0
        return it;
6188
0
    }
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_21reader_impl_for_floatIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EENSt3__117basic_string_viewIcNSG_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Line
Count
Source
6123
7.00k
    {
6124
7.00k
        const bool need_skipped_width =
6125
7.00k
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
7.00k
        auto it = rng.begin();
6129
7.00k
        std::ptrdiff_t prefix_width = 0;
6130
7.00k
        if (specs.precision != 0) {
6131
904
            auto max_width_view = take_width(rng, specs.precision);
6132
904
            SCN_TRY(prefix_result,
6133
884
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
884
            it = prefix_result.first.base();
6135
884
            prefix_width = prefix_result.second;
6136
884
        }
6137
6.10k
        else {
6138
6.10k
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
6.10k
            std::tie(it, prefix_width) = prefix_result;
6140
6.10k
        }
6141
6.98k
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
6.98k
        std::ptrdiff_t value_width = 0;
6145
6.98k
        if (specs.precision != 0) {
6146
884
            if (specs.precision <= prefix_width) {
6147
6
                return unexpected_scan_error(
6148
6
                    scan_error::invalid_scanned_value,
6149
6
                    "Too many fill characters before value, "
6150
6
                    "precision exceeded before reading value");
6151
6
            }
6152
6153
878
            const auto initial_width = specs.precision - prefix_width;
6154
878
            auto max_width_view =
6155
878
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
878
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
384
            it = w_it.base();
6158
384
            value_width = initial_width - w_it.count();
6159
384
        }
6160
6.10k
        else {
6161
6.10k
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
1.49k
                                             specs, value, loc));
6163
6164
1.49k
            if (need_skipped_width) {
6165
226
                value_width = calculate_text_width(
6166
226
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
226
                        .view());
6168
226
            }
6169
1.49k
        }
6170
6171
        // Read postfix
6172
1.88k
        std::ptrdiff_t postfix_width = 0;
6173
1.88k
        if (it != rng.end()) {
6174
1.43k
            SCN_TRY(postfix_result,
6175
1.43k
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
1.43k
                                 rd.skip_ws_before_read(), prefix_width,
6177
1.43k
                                 value_width));
6178
1.43k
            std::tie(it, postfix_width) = postfix_result;
6179
1.43k
        }
6180
6181
1.88k
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
1.88k
                                                 value_width, postfix_width);
6183
1.88k
            !e) {
6184
126
            return unexpected(e);
6185
126
        }
6186
6187
1.75k
        return it;
6188
1.88k
    }
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EENSt3__112basic_stringIcNSG_11char_traitsIcEENSG_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
6123
7.00k
    {
6124
7.00k
        const bool need_skipped_width =
6125
7.00k
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
7.00k
        auto it = rng.begin();
6129
7.00k
        std::ptrdiff_t prefix_width = 0;
6130
7.00k
        if (specs.precision != 0) {
6131
904
            auto max_width_view = take_width(rng, specs.precision);
6132
904
            SCN_TRY(prefix_result,
6133
884
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
884
            it = prefix_result.first.base();
6135
884
            prefix_width = prefix_result.second;
6136
884
        }
6137
6.10k
        else {
6138
6.10k
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
6.10k
            std::tie(it, prefix_width) = prefix_result;
6140
6.10k
        }
6141
6.98k
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
6.98k
        std::ptrdiff_t value_width = 0;
6145
6.98k
        if (specs.precision != 0) {
6146
884
            if (specs.precision <= prefix_width) {
6147
6
                return unexpected_scan_error(
6148
6
                    scan_error::invalid_scanned_value,
6149
6
                    "Too many fill characters before value, "
6150
6
                    "precision exceeded before reading value");
6151
6
            }
6152
6153
878
            const auto initial_width = specs.precision - prefix_width;
6154
878
            auto max_width_view =
6155
878
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
878
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
384
            it = w_it.base();
6158
384
            value_width = initial_width - w_it.count();
6159
384
        }
6160
6.10k
        else {
6161
6.10k
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
1.49k
                                             specs, value, loc));
6163
6164
1.49k
            if (need_skipped_width) {
6165
226
                value_width = calculate_text_width(
6166
226
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
226
                        .view());
6168
226
            }
6169
1.49k
        }
6170
6171
        // Read postfix
6172
1.88k
        std::ptrdiff_t postfix_width = 0;
6173
1.88k
        if (it != rng.end()) {
6174
1.43k
            SCN_TRY(postfix_result,
6175
1.43k
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
1.43k
                                 rd.skip_ws_before_read(), prefix_width,
6177
1.43k
                                 value_width));
6178
1.43k
            std::tie(it, postfix_width) = postfix_result;
6179
1.43k
        }
6180
6181
1.88k
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
1.88k
                                                 value_width, postfix_width);
6183
1.88k
            !e) {
6184
126
            return unexpected(e);
6185
126
        }
6186
6187
1.75k
        return it;
6188
1.88k
    }
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EENSt3__117basic_string_viewIwNSG_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_22reader_impl_for_stringIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EENSt3__112basic_stringIwNSG_11char_traitsIwEENSG_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
6123
7.00k
    {
6124
7.00k
        const bool need_skipped_width =
6125
7.00k
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
7.00k
        auto it = rng.begin();
6129
7.00k
        std::ptrdiff_t prefix_width = 0;
6130
7.00k
        if (specs.precision != 0) {
6131
904
            auto max_width_view = take_width(rng, specs.precision);
6132
904
            SCN_TRY(prefix_result,
6133
884
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
884
            it = prefix_result.first.base();
6135
884
            prefix_width = prefix_result.second;
6136
884
        }
6137
6.10k
        else {
6138
6.10k
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
6.10k
            std::tie(it, prefix_width) = prefix_result;
6140
6.10k
        }
6141
6.98k
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
6.98k
        std::ptrdiff_t value_width = 0;
6145
6.98k
        if (specs.precision != 0) {
6146
884
            if (specs.precision <= prefix_width) {
6147
6
                return unexpected_scan_error(
6148
6
                    scan_error::invalid_scanned_value,
6149
6
                    "Too many fill characters before value, "
6150
6
                    "precision exceeded before reading value");
6151
6
            }
6152
6153
878
            const auto initial_width = specs.precision - prefix_width;
6154
878
            auto max_width_view =
6155
878
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
878
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
384
            it = w_it.base();
6158
384
            value_width = initial_width - w_it.count();
6159
384
        }
6160
6.10k
        else {
6161
6.10k
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
1.49k
                                             specs, value, loc));
6163
6164
1.49k
            if (need_skipped_width) {
6165
226
                value_width = calculate_text_width(
6166
226
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
226
                        .view());
6168
226
            }
6169
1.49k
        }
6170
6171
        // Read postfix
6172
1.88k
        std::ptrdiff_t postfix_width = 0;
6173
1.88k
        if (it != rng.end()) {
6174
1.43k
            SCN_TRY(postfix_result,
6175
1.43k
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
1.43k
                                 rd.skip_ws_before_read(), prefix_width,
6177
1.43k
                                 value_width));
6178
1.43k
            std::tie(it, postfix_width) = postfix_result;
6179
1.43k
        }
6180
6181
1.88k
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
1.88k
                                                 value_width, postfix_width);
6183
1.88k
            !e) {
6184
126
            return unexpected(e);
6185
126
        }
6186
6187
1.75k
        return it;
6188
1.88k
    }
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_29reader_impl_for_regex_matchesIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_29reader_impl_for_regex_matchesIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIcEEE4implINS1_25reader_impl_for_monostateIcEENS0_6ranges6detail9subrange_8subrangeIPKcSE_EENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_23reader_impl_for_voidptrIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEPvEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_23reader_impl_for_voidptrIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEPvEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_20reader_impl_for_boolIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEbEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_20reader_impl_for_boolIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEbEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_wcharIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_21reader_impl_for_wcharIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEwEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_26reader_impl_for_code_pointIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEEDiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_26reader_impl_for_code_pointIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEEDiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_25reader_impl_for_monostateIcEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIcE16forward_iteratorENS9_18default_sentinel_tEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIcEEE4implINS1_25reader_impl_for_monostateIcEENSt3__117basic_string_viewIcNS9_11char_traitsIcEEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEaEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEsEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6123
520
    {
6124
520
        const bool need_skipped_width =
6125
520
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
520
        auto it = rng.begin();
6129
520
        std::ptrdiff_t prefix_width = 0;
6130
520
        if (specs.precision != 0) {
6131
160
            auto max_width_view = take_width(rng, specs.precision);
6132
160
            SCN_TRY(prefix_result,
6133
160
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
160
            it = prefix_result.first.base();
6135
160
            prefix_width = prefix_result.second;
6136
160
        }
6137
360
        else {
6138
360
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
360
            std::tie(it, prefix_width) = prefix_result;
6140
360
        }
6141
520
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
520
        std::ptrdiff_t value_width = 0;
6145
520
        if (specs.precision != 0) {
6146
160
            if (specs.precision <= prefix_width) {
6147
2
                return unexpected_scan_error(
6148
2
                    scan_error::invalid_scanned_value,
6149
2
                    "Too many fill characters before value, "
6150
2
                    "precision exceeded before reading value");
6151
2
            }
6152
6153
158
            const auto initial_width = specs.precision - prefix_width;
6154
158
            auto max_width_view =
6155
158
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
158
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
0
            it = w_it.base();
6158
0
            value_width = initial_width - w_it.count();
6159
0
        }
6160
360
        else {
6161
360
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
0
                                             specs, value, loc));
6163
6164
0
            if (need_skipped_width) {
6165
0
                value_width = calculate_text_width(
6166
0
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
0
                        .view());
6168
0
            }
6169
0
        }
6170
6171
        // Read postfix
6172
0
        std::ptrdiff_t postfix_width = 0;
6173
0
        if (it != rng.end()) {
6174
0
            SCN_TRY(postfix_result,
6175
0
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
0
                                 rd.skip_ws_before_read(), prefix_width,
6177
0
                                 value_width));
6178
0
            std::tie(it, postfix_width) = postfix_result;
6179
0
        }
6180
6181
0
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
0
                                                 value_width, postfix_width);
6183
0
            !e) {
6184
0
            return unexpected(e);
6185
0
        }
6186
6187
0
        return it;
6188
0
    }
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EElEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EExEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEhEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEtEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEjEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6123
520
    {
6124
520
        const bool need_skipped_width =
6125
520
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
520
        auto it = rng.begin();
6129
520
        std::ptrdiff_t prefix_width = 0;
6130
520
        if (specs.precision != 0) {
6131
160
            auto max_width_view = take_width(rng, specs.precision);
6132
160
            SCN_TRY(prefix_result,
6133
160
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
160
            it = prefix_result.first.base();
6135
160
            prefix_width = prefix_result.second;
6136
160
        }
6137
360
        else {
6138
360
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
360
            std::tie(it, prefix_width) = prefix_result;
6140
360
        }
6141
520
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
520
        std::ptrdiff_t value_width = 0;
6145
520
        if (specs.precision != 0) {
6146
160
            if (specs.precision <= prefix_width) {
6147
2
                return unexpected_scan_error(
6148
2
                    scan_error::invalid_scanned_value,
6149
2
                    "Too many fill characters before value, "
6150
2
                    "precision exceeded before reading value");
6151
2
            }
6152
6153
158
            const auto initial_width = specs.precision - prefix_width;
6154
158
            auto max_width_view =
6155
158
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
158
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
0
            it = w_it.base();
6158
0
            value_width = initial_width - w_it.count();
6159
0
        }
6160
360
        else {
6161
360
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
0
                                             specs, value, loc));
6163
6164
0
            if (need_skipped_width) {
6165
0
                value_width = calculate_text_width(
6166
0
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
0
                        .view());
6168
0
            }
6169
0
        }
6170
6171
        // Read postfix
6172
0
        std::ptrdiff_t postfix_width = 0;
6173
0
        if (it != rng.end()) {
6174
0
            SCN_TRY(postfix_result,
6175
0
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
0
                                 rd.skip_ws_before_read(), prefix_width,
6177
0
                                 value_width));
6178
0
            std::tie(it, postfix_width) = postfix_result;
6179
0
        }
6180
6181
0
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
0
                                                 value_width, postfix_width);
6183
0
            !e) {
6184
0
            return unexpected(e);
6185
0
        }
6186
6187
0
        return it;
6188
0
    }
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEmEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_19reader_impl_for_intIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEyEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_23reader_impl_for_voidptrIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEPvEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Line
Count
Source
6123
448
    {
6124
448
        const bool need_skipped_width =
6125
448
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
448
        auto it = rng.begin();
6129
448
        std::ptrdiff_t prefix_width = 0;
6130
448
        if (specs.precision != 0) {
6131
124
            auto max_width_view = take_width(rng, specs.precision);
6132
124
            SCN_TRY(prefix_result,
6133
124
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
124
            it = prefix_result.first.base();
6135
124
            prefix_width = prefix_result.second;
6136
124
        }
6137
324
        else {
6138
324
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
324
            std::tie(it, prefix_width) = prefix_result;
6140
324
        }
6141
448
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
448
        std::ptrdiff_t value_width = 0;
6145
448
        if (specs.precision != 0) {
6146
124
            if (specs.precision <= prefix_width) {
6147
2
                return unexpected_scan_error(
6148
2
                    scan_error::invalid_scanned_value,
6149
2
                    "Too many fill characters before value, "
6150
2
                    "precision exceeded before reading value");
6151
2
            }
6152
6153
122
            const auto initial_width = specs.precision - prefix_width;
6154
122
            auto max_width_view =
6155
122
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
122
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
0
            it = w_it.base();
6158
0
            value_width = initial_width - w_it.count();
6159
0
        }
6160
324
        else {
6161
324
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
0
                                             specs, value, loc));
6163
6164
0
            if (need_skipped_width) {
6165
0
                value_width = calculate_text_width(
6166
0
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
0
                        .view());
6168
0
            }
6169
0
        }
6170
6171
        // Read postfix
6172
0
        std::ptrdiff_t postfix_width = 0;
6173
0
        if (it != rng.end()) {
6174
0
            SCN_TRY(postfix_result,
6175
0
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
0
                                 rd.skip_ws_before_read(), prefix_width,
6177
0
                                 value_width));
6178
0
            std::tie(it, postfix_width) = postfix_result;
6179
0
        }
6180
6181
0
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
0
                                                 value_width, postfix_width);
6183
0
            !e) {
6184
0
            return unexpected(e);
6185
0
        }
6186
6187
0
        return it;
6188
0
    }
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_20reader_impl_for_boolIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEbEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6123
602
    {
6124
602
        const bool need_skipped_width =
6125
602
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
602
        auto it = rng.begin();
6129
602
        std::ptrdiff_t prefix_width = 0;
6130
602
        if (specs.precision != 0) {
6131
188
            auto max_width_view = take_width(rng, specs.precision);
6132
188
            SCN_TRY(prefix_result,
6133
188
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
188
            it = prefix_result.first.base();
6135
188
            prefix_width = prefix_result.second;
6136
188
        }
6137
414
        else {
6138
414
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
414
            std::tie(it, prefix_width) = prefix_result;
6140
414
        }
6141
602
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
602
        std::ptrdiff_t value_width = 0;
6145
602
        if (specs.precision != 0) {
6146
188
            if (specs.precision <= prefix_width) {
6147
4
                return unexpected_scan_error(
6148
4
                    scan_error::invalid_scanned_value,
6149
4
                    "Too many fill characters before value, "
6150
4
                    "precision exceeded before reading value");
6151
4
            }
6152
6153
184
            const auto initial_width = specs.precision - prefix_width;
6154
184
            auto max_width_view =
6155
184
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
184
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
0
            it = w_it.base();
6158
0
            value_width = initial_width - w_it.count();
6159
0
        }
6160
414
        else {
6161
414
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
0
                                             specs, value, loc));
6163
6164
0
            if (need_skipped_width) {
6165
0
                value_width = calculate_text_width(
6166
0
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
0
                        .view());
6168
0
            }
6169
0
        }
6170
6171
        // Read postfix
6172
0
        std::ptrdiff_t postfix_width = 0;
6173
0
        if (it != rng.end()) {
6174
0
            SCN_TRY(postfix_result,
6175
0
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
0
                                 rd.skip_ws_before_read(), prefix_width,
6177
0
                                 value_width));
6178
0
            std::tie(it, postfix_width) = postfix_result;
6179
0
        }
6180
6181
0
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
0
                                                 value_width, postfix_width);
6183
0
            !e) {
6184
0
            return unexpected(e);
6185
0
        }
6186
6187
0
        return it;
6188
0
    }
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_20reader_impl_for_charIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_21reader_impl_for_wcharIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEwEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6123
484
    {
6124
484
        const bool need_skipped_width =
6125
484
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
484
        auto it = rng.begin();
6129
484
        std::ptrdiff_t prefix_width = 0;
6130
484
        if (specs.precision != 0) {
6131
142
            auto max_width_view = take_width(rng, specs.precision);
6132
142
            SCN_TRY(prefix_result,
6133
142
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
142
            it = prefix_result.first.base();
6135
142
            prefix_width = prefix_result.second;
6136
142
        }
6137
342
        else {
6138
342
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
342
            std::tie(it, prefix_width) = prefix_result;
6140
342
        }
6141
484
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
484
        std::ptrdiff_t value_width = 0;
6145
484
        if (specs.precision != 0) {
6146
142
            if (specs.precision <= prefix_width) {
6147
2
                return unexpected_scan_error(
6148
2
                    scan_error::invalid_scanned_value,
6149
2
                    "Too many fill characters before value, "
6150
2
                    "precision exceeded before reading value");
6151
2
            }
6152
6153
140
            const auto initial_width = specs.precision - prefix_width;
6154
140
            auto max_width_view =
6155
140
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
140
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
120
            it = w_it.base();
6158
120
            value_width = initial_width - w_it.count();
6159
120
        }
6160
342
        else {
6161
342
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
322
                                             specs, value, loc));
6163
6164
322
            if (need_skipped_width) {
6165
244
                value_width = calculate_text_width(
6166
244
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
244
                        .view());
6168
244
            }
6169
322
        }
6170
6171
        // Read postfix
6172
442
        std::ptrdiff_t postfix_width = 0;
6173
442
        if (it != rng.end()) {
6174
442
            SCN_TRY(postfix_result,
6175
442
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
442
                                 rd.skip_ws_before_read(), prefix_width,
6177
442
                                 value_width));
6178
442
            std::tie(it, postfix_width) = postfix_result;
6179
442
        }
6180
6181
442
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
442
                                                 value_width, postfix_width);
6183
442
            !e) {
6184
244
            return unexpected(e);
6185
244
        }
6186
6187
198
        return it;
6188
442
    }
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_26reader_impl_for_code_pointIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEDiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEfEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEdEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Line
Count
Source
6123
492
    {
6124
492
        const bool need_skipped_width =
6125
492
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
492
        auto it = rng.begin();
6129
492
        std::ptrdiff_t prefix_width = 0;
6130
492
        if (specs.precision != 0) {
6131
146
            auto max_width_view = take_width(rng, specs.precision);
6132
146
            SCN_TRY(prefix_result,
6133
146
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
146
            it = prefix_result.first.base();
6135
146
            prefix_width = prefix_result.second;
6136
146
        }
6137
346
        else {
6138
346
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
346
            std::tie(it, prefix_width) = prefix_result;
6140
346
        }
6141
492
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
492
        std::ptrdiff_t value_width = 0;
6145
492
        if (specs.precision != 0) {
6146
146
            if (specs.precision <= prefix_width) {
6147
4
                return unexpected_scan_error(
6148
4
                    scan_error::invalid_scanned_value,
6149
4
                    "Too many fill characters before value, "
6150
4
                    "precision exceeded before reading value");
6151
4
            }
6152
6153
142
            const auto initial_width = specs.precision - prefix_width;
6154
142
            auto max_width_view =
6155
142
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
142
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
0
            it = w_it.base();
6158
0
            value_width = initial_width - w_it.count();
6159
0
        }
6160
346
        else {
6161
346
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
0
                                             specs, value, loc));
6163
6164
0
            if (need_skipped_width) {
6165
0
                value_width = calculate_text_width(
6166
0
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
0
                        .view());
6168
0
            }
6169
0
        }
6170
6171
        // Read postfix
6172
0
        std::ptrdiff_t postfix_width = 0;
6173
0
        if (it != rng.end()) {
6174
0
            SCN_TRY(postfix_result,
6175
0
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
0
                                 rd.skip_ws_before_read(), prefix_width,
6177
0
                                 value_width));
6178
0
            std::tie(it, postfix_width) = postfix_result;
6179
0
        }
6180
6181
0
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
0
                                                 value_width, postfix_width);
6183
0
            !e) {
6184
0
            return unexpected(e);
6185
0
        }
6186
6187
0
        return it;
6188
0
    }
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_21reader_impl_for_floatIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EEeEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EENSt3__117basic_string_viewIcNSG_11char_traitsIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EENSt3__112basic_stringIcNSG_11char_traitsIcEENSG_9allocatorIcEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
6123
3.17k
    {
6124
3.17k
        const bool need_skipped_width =
6125
3.17k
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
3.17k
        auto it = rng.begin();
6129
3.17k
        std::ptrdiff_t prefix_width = 0;
6130
3.17k
        if (specs.precision != 0) {
6131
238
            auto max_width_view = take_width(rng, specs.precision);
6132
238
            SCN_TRY(prefix_result,
6133
238
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
238
            it = prefix_result.first.base();
6135
238
            prefix_width = prefix_result.second;
6136
238
        }
6137
2.93k
        else {
6138
2.93k
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
2.93k
            std::tie(it, prefix_width) = prefix_result;
6140
2.93k
        }
6141
3.17k
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
3.17k
        std::ptrdiff_t value_width = 0;
6145
3.17k
        if (specs.precision != 0) {
6146
238
            if (specs.precision <= prefix_width) {
6147
6
                return unexpected_scan_error(
6148
6
                    scan_error::invalid_scanned_value,
6149
6
                    "Too many fill characters before value, "
6150
6
                    "precision exceeded before reading value");
6151
6
            }
6152
6153
232
            const auto initial_width = specs.precision - prefix_width;
6154
232
            auto max_width_view =
6155
232
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
232
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
134
            it = w_it.base();
6158
134
            value_width = initial_width - w_it.count();
6159
134
        }
6160
2.93k
        else {
6161
2.93k
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
792
                                             specs, value, loc));
6163
6164
792
            if (need_skipped_width) {
6165
422
                value_width = calculate_text_width(
6166
422
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
422
                        .view());
6168
422
            }
6169
792
        }
6170
6171
        // Read postfix
6172
926
        std::ptrdiff_t postfix_width = 0;
6173
926
        if (it != rng.end()) {
6174
622
            SCN_TRY(postfix_result,
6175
622
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
622
                                 rd.skip_ws_before_read(), prefix_width,
6177
622
                                 value_width));
6178
622
            std::tie(it, postfix_width) = postfix_result;
6179
622
        }
6180
6181
926
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
926
                                                 value_width, postfix_width);
6183
926
            !e) {
6184
200
            return unexpected(e);
6185
200
        }
6186
6187
726
        return it;
6188
926
    }
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EENSt3__117basic_string_viewIwNSG_11char_traitsIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SM_RT1_
Line
Count
Source
6123
3.17k
    {
6124
3.17k
        const bool need_skipped_width =
6125
3.17k
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
3.17k
        auto it = rng.begin();
6129
3.17k
        std::ptrdiff_t prefix_width = 0;
6130
3.17k
        if (specs.precision != 0) {
6131
238
            auto max_width_view = take_width(rng, specs.precision);
6132
238
            SCN_TRY(prefix_result,
6133
238
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
238
            it = prefix_result.first.base();
6135
238
            prefix_width = prefix_result.second;
6136
238
        }
6137
2.93k
        else {
6138
2.93k
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
2.93k
            std::tie(it, prefix_width) = prefix_result;
6140
2.93k
        }
6141
3.17k
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
3.17k
        std::ptrdiff_t value_width = 0;
6145
3.17k
        if (specs.precision != 0) {
6146
238
            if (specs.precision <= prefix_width) {
6147
6
                return unexpected_scan_error(
6148
6
                    scan_error::invalid_scanned_value,
6149
6
                    "Too many fill characters before value, "
6150
6
                    "precision exceeded before reading value");
6151
6
            }
6152
6153
232
            const auto initial_width = specs.precision - prefix_width;
6154
232
            auto max_width_view =
6155
232
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
232
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
134
            it = w_it.base();
6158
134
            value_width = initial_width - w_it.count();
6159
134
        }
6160
2.93k
        else {
6161
2.93k
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
792
                                             specs, value, loc));
6163
6164
792
            if (need_skipped_width) {
6165
422
                value_width = calculate_text_width(
6166
422
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
422
                        .view());
6168
422
            }
6169
792
        }
6170
6171
        // Read postfix
6172
926
        std::ptrdiff_t postfix_width = 0;
6173
926
        if (it != rng.end()) {
6174
622
            SCN_TRY(postfix_result,
6175
622
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
622
                                 rd.skip_ws_before_read(), prefix_width,
6177
622
                                 value_width));
6178
622
            std::tie(it, postfix_width) = postfix_result;
6179
622
        }
6180
6181
926
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
926
                                                 value_width, postfix_width);
6183
926
            !e) {
6184
200
            return unexpected(e);
6185
200
        }
6186
6187
726
        return it;
6188
926
    }
_ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_22reader_impl_for_stringIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EENSt3__112basic_stringIwNSG_11char_traitsIwEENSG_9allocatorIwEEEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SO_RT1_
Line
Count
Source
6123
3.17k
    {
6124
3.17k
        const bool need_skipped_width =
6125
3.17k
            specs.width != 0 || specs.precision != 0;
6126
6127
        // Read prefix
6128
3.17k
        auto it = rng.begin();
6129
3.17k
        std::ptrdiff_t prefix_width = 0;
6130
3.17k
        if (specs.precision != 0) {
6131
238
            auto max_width_view = take_width(rng, specs.precision);
6132
238
            SCN_TRY(prefix_result,
6133
238
                    impl_prefix(max_width_view, rd.skip_ws_before_read()));
6134
238
            it = prefix_result.first.base();
6135
238
            prefix_width = prefix_result.second;
6136
238
        }
6137
2.93k
        else {
6138
2.93k
            SCN_TRY(prefix_result, impl_prefix(rng, rd.skip_ws_before_read()));
6139
2.93k
            std::tie(it, prefix_width) = prefix_result;
6140
2.93k
        }
6141
3.17k
        auto prefix_end_it = it;
6142
6143
        // Read value
6144
3.17k
        std::ptrdiff_t value_width = 0;
6145
3.17k
        if (specs.precision != 0) {
6146
238
            if (specs.precision <= prefix_width) {
6147
6
                return unexpected_scan_error(
6148
6
                    scan_error::invalid_scanned_value,
6149
6
                    "Too many fill characters before value, "
6150
6
                    "precision exceeded before reading value");
6151
6
            }
6152
6153
232
            const auto initial_width = specs.precision - prefix_width;
6154
232
            auto max_width_view =
6155
232
                take_width(ranges::subrange{it, rng.end()}, initial_width);
6156
232
            SCN_TRY(w_it, rd.read_specs(max_width_view, specs, value, loc));
6157
134
            it = w_it.base();
6158
134
            value_width = initial_width - w_it.count();
6159
134
        }
6160
2.93k
        else {
6161
2.93k
            SCN_TRY_ASSIGN(it, rd.read_specs(ranges::subrange{it, rng.end()},
6162
792
                                             specs, value, loc));
6163
6164
792
            if (need_skipped_width) {
6165
422
                value_width = calculate_text_width(
6166
422
                    make_contiguous_buffer(ranges::subrange{prefix_end_it, it})
6167
422
                        .view());
6168
422
            }
6169
792
        }
6170
6171
        // Read postfix
6172
926
        std::ptrdiff_t postfix_width = 0;
6173
926
        if (it != rng.end()) {
6174
622
            SCN_TRY(postfix_result,
6175
622
                    impl_postfix(ranges::subrange{it, rng.end()},
6176
622
                                 rd.skip_ws_before_read(), prefix_width,
6177
622
                                 value_width));
6178
622
            std::tie(it, postfix_width) = postfix_result;
6179
622
        }
6180
6181
926
        if (auto e = check_widths_for_arg_reader(specs, prefix_width,
6182
926
                                                 value_width, postfix_width);
6183
926
            !e) {
6184
200
            return unexpected(e);
6185
200
        }
6186
6187
726
        return it;
6188
926
    }
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_29reader_impl_for_regex_matchesIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EENS0_19basic_regex_matchesIcEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_29reader_impl_for_regex_matchesIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EENS0_19basic_regex_matchesIwEEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SJ_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS1_29basic_contiguous_scan_contextIwEEE4implINS1_25reader_impl_for_monostateIwEENS0_6ranges6detail9subrange_8subrangeIPKwSE_EENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SI_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_23reader_impl_for_voidptrIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEPvEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_23reader_impl_for_voidptrIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEPvEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_20reader_impl_for_boolIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEbEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_20reader_impl_for_boolIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEbEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_20reader_impl_for_charIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEcEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_20reader_impl_for_charIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEcEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_26reader_impl_for_code_pointIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEEDiEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SK_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_26reader_impl_for_code_pointIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEEDiEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SG_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_25reader_impl_for_monostateIwEENS0_6ranges6detail9subrange_8subrangeINS0_6detail17basic_scan_bufferIwE16forward_iteratorENS9_18default_sentinel_tEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS9_5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SL_RT1_
Unexecuted instantiation: _ZN3scn2v34impl10arg_readerINS0_18basic_scan_contextIwEEE4implINS1_25reader_impl_for_monostateIwEENSt3__117basic_string_viewIwNS9_11char_traitsIwEEEENS0_9monostateEEENS0_13scan_expectedIDTclL_ZNS0_6ranges5beginEEclsr3stdE7declvalIRT0_EEEEEERT_SH_RT1_
6189
6190
    template <typename T>
6191
    scan_expected<iterator> operator()(T& value)
6192
93.8k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
93.8k
                          basic_contiguous_scan_context<char_type>>) {
6197
93.8k
            auto rd = make_reader<T, char_type>();
6198
93.8k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
56.5k
                return unexpected(e);
6200
56.5k
            }
6201
6202
37.2k
            return impl(rd, range, value);
6203
        }
6204
0
        else if constexpr (!detail::is_type_disabled<T>) {
6205
0
            auto rd = make_reader<T, char_type>();
6206
0
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
0
                return unexpected(e);
6208
0
            }
6209
6210
0
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
0
                specs.width != 0) {
6212
0
                return impl(rd, range, value);
6213
0
            }
6214
6215
0
            auto crange = get_as_contiguous(range);
6216
0
            SCN_TRY(it, impl(rd, crange, value));
6217
0
            return ranges::next(range.begin(),
6218
0
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
93.8k
    }
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<char>(char&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<short>(short&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<int>(int&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<long>(long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<unsigned short>(unsigned short&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<unsigned int>(unsigned int&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<unsigned long long>(unsigned long long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<float>(float&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<double>(double&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<long double>(long double&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<scn::v3::basic_regex_matches<char> >(scn::v3::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<scn::v3::basic_regex_matches<wchar_t> >(scn::v3::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<wchar_t>(wchar_t&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<short>(short&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<int>(int&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<long>(long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<unsigned short>(unsigned short&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<unsigned int>(unsigned int&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<unsigned long long>(unsigned long long&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<float>(float&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<double>(double&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<long double>(long double&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<scn::v3::basic_regex_matches<char> >(scn::v3::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<scn::v3::basic_regex_matches<wchar_t> >(scn::v3::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<short>(short&)
scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<int>(int&)
Line
Count
Source
6192
7.17k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
7.17k
                          basic_contiguous_scan_context<char_type>>) {
6197
7.17k
            auto rd = make_reader<T, char_type>();
6198
7.17k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
6.58k
                return unexpected(e);
6200
6.58k
            }
6201
6202
588
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
7.17k
    }
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<long>(long&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<unsigned short>(unsigned short&)
scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<unsigned int>(unsigned int&)
Line
Count
Source
6192
7.17k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
7.17k
                          basic_contiguous_scan_context<char_type>>) {
6197
7.17k
            auto rd = make_reader<T, char_type>();
6198
7.17k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
6.58k
                return unexpected(e);
6200
6.58k
            }
6201
6202
588
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
7.17k
    }
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<unsigned long long>(unsigned long long&)
scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<void*>(void*&)
Line
Count
Source
6192
7.13k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
7.13k
                          basic_contiguous_scan_context<char_type>>) {
6197
7.13k
            auto rd = make_reader<T, char_type>();
6198
7.13k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
6.62k
                return unexpected(e);
6200
6.62k
            }
6201
6202
512
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
7.13k
    }
scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<bool>(bool&)
Line
Count
Source
6192
7.17k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
7.17k
                          basic_contiguous_scan_context<char_type>>) {
6197
7.17k
            auto rd = make_reader<T, char_type>();
6198
7.17k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
6.38k
                return unexpected(e);
6200
6.38k
            }
6201
6202
796
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
7.17k
    }
scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<char>(char&)
Line
Count
Source
6192
7.13k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
7.13k
                          basic_contiguous_scan_context<char_type>>) {
6197
7.13k
            auto rd = make_reader<T, char_type>();
6198
7.13k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
6.57k
                return unexpected(e);
6200
6.57k
            }
6201
6202
562
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
7.13k
    }
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<wchar_t>(wchar_t&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<float>(float&)
scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<double>(double&)
Line
Count
Source
6192
7.17k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
7.17k
                          basic_contiguous_scan_context<char_type>>) {
6197
7.17k
            auto rd = make_reader<T, char_type>();
6198
7.17k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
6.59k
                return unexpected(e);
6200
6.59k
            }
6201
6202
586
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
7.17k
    }
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<long double>(long double&)
scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
Line
Count
Source
6192
7.13k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
7.13k
                          basic_contiguous_scan_context<char_type>>) {
6197
7.13k
            auto rd = make_reader<T, char_type>();
6198
7.13k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
126
                return unexpected(e);
6200
126
            }
6201
6202
7.00k
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
7.13k
    }
scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
6192
7.13k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
7.13k
                          basic_contiguous_scan_context<char_type>>) {
6197
7.13k
            auto rd = make_reader<T, char_type>();
6198
7.13k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
126
                return unexpected(e);
6200
126
            }
6201
6202
7.00k
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
7.13k
    }
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
6192
7.13k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
7.13k
                          basic_contiguous_scan_context<char_type>>) {
6197
7.13k
            auto rd = make_reader<T, char_type>();
6198
7.13k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
126
                return unexpected(e);
6200
126
            }
6201
6202
7.00k
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
7.13k
    }
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<scn::v3::basic_regex_matches<char> >(scn::v3::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<scn::v3::basic_regex_matches<wchar_t> >(scn::v3::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v3::scan_expected<char const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()<scn::v3::monostate>(scn::v3::monostate&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<void*>(void*&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<bool>(bool&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<wchar_t>(wchar_t&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()<scn::v3::monostate>(scn::v3::monostate&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<signed char>(signed char&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<short>(short&)
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<int>(int&)
Line
Count
Source
6192
3.29k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
3.29k
                          basic_contiguous_scan_context<char_type>>) {
6197
3.29k
            auto rd = make_reader<T, char_type>();
6198
3.29k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
2.77k
                return unexpected(e);
6200
2.77k
            }
6201
6202
520
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
3.29k
    }
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<long>(long&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<long long>(long long&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<unsigned char>(unsigned char&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<unsigned short>(unsigned short&)
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<unsigned int>(unsigned int&)
Line
Count
Source
6192
3.29k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
3.29k
                          basic_contiguous_scan_context<char_type>>) {
6197
3.29k
            auto rd = make_reader<T, char_type>();
6198
3.29k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
2.77k
                return unexpected(e);
6200
2.77k
            }
6201
6202
520
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
3.29k
    }
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<unsigned long>(unsigned long&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<unsigned long long>(unsigned long long&)
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<void*>(void*&)
Line
Count
Source
6192
3.25k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
3.25k
                          basic_contiguous_scan_context<char_type>>) {
6197
3.25k
            auto rd = make_reader<T, char_type>();
6198
3.25k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
2.80k
                return unexpected(e);
6200
2.80k
            }
6201
6202
448
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
3.25k
    }
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<bool>(bool&)
Line
Count
Source
6192
3.29k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
3.29k
                          basic_contiguous_scan_context<char_type>>) {
6197
3.29k
            auto rd = make_reader<T, char_type>();
6198
3.29k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
2.69k
                return unexpected(e);
6200
2.69k
            }
6201
6202
602
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
3.29k
    }
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<char>(char&)
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<wchar_t>(wchar_t&)
Line
Count
Source
6192
3.25k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
3.25k
                          basic_contiguous_scan_context<char_type>>) {
6197
3.25k
            auto rd = make_reader<T, char_type>();
6198
3.25k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
2.76k
                return unexpected(e);
6200
2.76k
            }
6201
6202
484
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
3.25k
    }
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<float>(float&)
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<double>(double&)
Line
Count
Source
6192
3.29k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
3.29k
                          basic_contiguous_scan_context<char_type>>) {
6197
3.29k
            auto rd = make_reader<T, char_type>();
6198
3.29k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
2.80k
                return unexpected(e);
6200
2.80k
            }
6201
6202
492
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
3.29k
    }
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<long double>(long double&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&)
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)
Line
Count
Source
6192
3.25k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
3.25k
                          basic_contiguous_scan_context<char_type>>) {
6197
3.25k
            auto rd = make_reader<T, char_type>();
6198
3.25k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
78
                return unexpected(e);
6200
78
            }
6201
6202
3.17k
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
3.25k
    }
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&)
Line
Count
Source
6192
3.25k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
3.25k
                          basic_contiguous_scan_context<char_type>>) {
6197
3.25k
            auto rd = make_reader<T, char_type>();
6198
3.25k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
78
                return unexpected(e);
6200
78
            }
6201
6202
3.17k
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
3.25k
    }
scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&)
Line
Count
Source
6192
3.25k
    {
6193
        if constexpr (!detail::is_type_disabled<T> &&
6194
                      std::is_same_v<
6195
                          context_type,
6196
3.25k
                          basic_contiguous_scan_context<char_type>>) {
6197
3.25k
            auto rd = make_reader<T, char_type>();
6198
3.25k
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6199
78
                return unexpected(e);
6200
78
            }
6201
6202
3.17k
            return impl(rd, range, value);
6203
        }
6204
        else if constexpr (!detail::is_type_disabled<T>) {
6205
            auto rd = make_reader<T, char_type>();
6206
            if (auto e = rd.check_specs(specs); SCN_UNLIKELY(!e)) {
6207
                return unexpected(e);
6208
            }
6209
6210
            if (!is_segment_contiguous(range) || specs.precision != 0 ||
6211
                specs.width != 0) {
6212
                return impl(rd, range, value);
6213
            }
6214
6215
            auto crange = get_as_contiguous(range);
6216
            SCN_TRY(it, impl(rd, crange, value));
6217
            return ranges::next(range.begin(),
6218
                                ranges::distance(crange.begin(), it));
6219
        }
6220
        else {
6221
            SCN_EXPECT(false);
6222
            SCN_UNREACHABLE;
6223
        }
6224
3.25k
    }
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<scn::v3::basic_regex_matches<char> >(scn::v3::basic_regex_matches<char>&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<scn::v3::basic_regex_matches<wchar_t> >(scn::v3::basic_regex_matches<wchar_t>&)
Unexecuted instantiation: scn::v3::scan_expected<wchar_t const*> scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()<scn::v3::monostate>(scn::v3::monostate&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<void*>(void*&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<bool>(bool&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<char>(char&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<char32_t>(char32_t&)
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<scn::v3::monostate>(scn::v3::monostate&)
6225
6226
    scan_expected<iterator> operator()(typename context_type::arg_type::handle)
6227
0
    {
6228
0
        SCN_EXPECT(false);
6229
0
        SCN_UNREACHABLE;
6230
0
    }
Unexecuted instantiation: scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<char> >::operator()(scn::v3::basic_scan_arg<scn::v3::basic_scan_context<char> >::handle)
Unexecuted instantiation: scn::v3::impl::arg_reader<scn::v3::basic_scan_context<char> >::operator()(scn::v3::basic_scan_arg<scn::v3::basic_scan_context<char> >::handle)
Unexecuted instantiation: scn::v3::impl::arg_reader<scn::v3::impl::basic_contiguous_scan_context<wchar_t> >::operator()(scn::v3::basic_scan_arg<scn::v3::basic_scan_context<wchar_t> >::handle)
Unexecuted instantiation: scn::v3::impl::arg_reader<scn::v3::basic_scan_context<wchar_t> >::operator()(scn::v3::basic_scan_arg<scn::v3::basic_scan_context<wchar_t> >::handle)
6231
6232
    range_type range;
6233
    const detail::format_specs& specs;
6234
    detail::locale_ref loc;
6235
};
6236
6237
template <typename Context>
6238
struct custom_reader {
6239
    using context_type = Context;
6240
    using char_type = typename context_type::char_type;
6241
    using parse_context_type = typename context_type::parse_context_type;
6242
    using iterator = typename context_type::iterator;
6243
6244
    template <typename T>
6245
    scan_expected<iterator> operator()(T&) const
6246
0
    {
6247
0
        SCN_EXPECT(false);
6248
0
        SCN_UNREACHABLE;
6249
0
    }
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<signed char>(signed char&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<short>(short&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<int>(int&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<long>(long&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<long long>(long long&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<unsigned char>(unsigned char&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<unsigned short>(unsigned short&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<unsigned int>(unsigned int&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<unsigned long>(unsigned long&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<unsigned long long>(unsigned long long&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<void*>(void*&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<bool>(bool&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<char>(char&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<wchar_t>(wchar_t&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<char32_t>(char32_t&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<float>(float&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<double>(double&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<long double>(long double&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<scn::v3::basic_regex_matches<char> >(scn::v3::basic_regex_matches<char>&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<scn::v3::basic_regex_matches<wchar_t> >(scn::v3::basic_regex_matches<wchar_t>&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<char>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()<scn::v3::monostate>(scn::v3::monostate&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<signed char>(signed char&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<short>(short&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<int>(int&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<long>(long&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<long long>(long long&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<unsigned char>(unsigned char&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<unsigned short>(unsigned short&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<unsigned int>(unsigned int&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<unsigned long>(unsigned long&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<unsigned long long>(unsigned long long&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<void*>(void*&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<bool>(bool&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<char>(char&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<wchar_t>(wchar_t&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<char32_t>(char32_t&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<float>(float&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<double>(double&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<long double>(long double&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(std::__1::basic_string_view<char, std::__1::char_traits<char> >&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> > >(std::__1::basic_string_view<wchar_t, std::__1::char_traits<wchar_t> >&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >(std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<scn::v3::basic_regex_matches<char> >(scn::v3::basic_regex_matches<char>&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<scn::v3::basic_regex_matches<wchar_t> >(scn::v3::basic_regex_matches<wchar_t>&) const
Unexecuted instantiation: scn::v3::scan_expected<scn::v3::detail::basic_scan_buffer<wchar_t>::forward_iterator> scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()<scn::v3::monostate>(scn::v3::monostate&) const
6250
6251
    scan_expected<iterator> operator()(
6252
        typename context_type::arg_type::handle h) const
6253
0
    {
6254
0
        if (auto e = h.scan(parse_ctx, ctx); !e) {
6255
0
            return unexpected(e);
6256
0
        }
6257
0
        return {ctx.begin()};
6258
0
    }
Unexecuted instantiation: scn::v3::impl::custom_reader<scn::v3::basic_scan_context<char> >::operator()(scn::v3::basic_scan_arg<scn::v3::basic_scan_context<char> >::handle) const
Unexecuted instantiation: scn::v3::impl::custom_reader<scn::v3::basic_scan_context<wchar_t> >::operator()(scn::v3::basic_scan_arg<scn::v3::basic_scan_context<wchar_t> >::handle) const
6259
6260
    parse_context_type& parse_ctx;
6261
    context_type& ctx;
6262
};
6263
}  // namespace impl
6264
6265
SCN_END_NAMESPACE
6266
}  // namespace scn